javascript 我希望字符串长度是8的倍数,并删除字符串中的任何多余数字

dffbzjpn  于 2022-12-21  发布在  Java
关注(0)|答案(5)|浏览(133)

我希望一个字符串返回的长度是8的倍数,例如,如果我有123456789,所以这里我需要返回一个字符串12345678删除最后一位数字例2:例如,字符串长度为123456789123=〉,此处应删除9123并返回1234 5678
当我传递字符串长度为8时,我返回一个字符串长度,长度不是8的倍数,我应该通过删除多余的字符使它们成为8的倍数

sg3maiej

sg3maiej1#

这里还有一个例子供你参考

var a = '1234567891231234567891236';
console.log(a.substring(8*Math.floor(a.length/8), 0));
5n0oy7gb

5n0oy7gb2#

您可以从以下示例开始:

function getStringMultipleOfEight(str) {
  const remainder = str.length % 8;
  const newLength = str.length - remainder;
  return str.substring(0, newLength);
}

console.log(getStringMultipleOfEight('123456789')); // Output: '12345678'
console.log(getStringMultipleOfEight('123456789123')); // Output: '12345678'
daupos2t

daupos2t3#

希望这是你想要的

let str = "1234567887654321deleted"

function get8Multiple(tobehandlestring){
  let len = str.length
  if (len <= 8) return tobehandlestring;
  
  let extra = len % 8;
  
  return tobehandlestring.substring(0, len-extra);
  
}

console.log(get8Multiple(str));
pkbketx9

pkbketx94#

尽管你还没有发布任何你自己的尝试来解决这个问题,这里有一个开始:
Remainder (%)运算符派上了用场。
1.获取字符串的完整长度
1.应用余数运算符以获取过长的字符串长度
1.把绳子从末端取下来

function returnStringMultipleEight(originalString) {
    // get the length which should be removed
    const lengthTooMuch = originalString.length % 8;
    
    // calculate the length from first character to the last one to keep
    const lengthToEight = originalString.length - lengthTooMuch;
    
    // get the substring
    const reducedString = originalString.substring(0, lengthToEight);
    
    return reducedString;
}

console.log(returnStringMultipleEight('123456789123'));
console.log(returnStringMultipleEight('12345678912345678912345'));
console.log(returnStringMultipleEight('askldjaflskjflskdfj'));
eoxn13cs

eoxn13cs5#

我解决了我自己的问题,答案是我们只需要从字符串的长度中减去余数,例如return str.slice(0,str. length-str.length%8)

相关问题