gpt4 book ai didi

javascript - 尝试在 2 个奇数之间插入破折号。错误 : Illegal return statement

转载 作者:行者123 更新时间:2023-11-28 03:57:47 25 4
gpt4 key购买 nike

function insertDash(str) {

var arr = str.split("");

for (var i = 0; i < arr.length; i++) {

if (arr[i] % 2 != 0 && arr[i + 1] % 2 != 0) {

var x = arr.splice(i + 1, 0, '-');

}

}

return arr;

}

console.log(insertDash("99999"));

最佳答案

您可以使用 String#replace使用带有 lookahead 的正则表达式:

function insertDash(string) {
return string.replace(/([13579](?=[13579]))/g, "$1-");
}

console.log(insertDash("99999"));
console.log(insertDash("1122334455"));

另一个选项是使用 Array#reduce 创建字符串:

function insertDash(string) {
return string.split('').reduce(function(s, c, i, arr) {
return s + c + (c % 2 && arr[i + 1] % 2 ? '-' : '');
}, '');
}

console.log(insertDash("99999"));
console.log(insertDash("1122334455"));

关于javascript - 尝试在 2 个奇数之间插入破折号。错误 : Illegal return statement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47426161/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com