我试图在数组中的偶数之间插入一个连字符“-”,所以如果我有 43268356925485942568,它会显示 432–6–83569254–8594–256–8。这些数字是随机生成的。我尝试了几件事,但没有成功。
<body>
<div id="arrayDisp">
</div>
<div id="numbers">
</div>
<script>
var numbers = new Array(20);
var numbers2 = new Array(20)
for (var i = 0; i< numbers.length; i++)
{
numbers[i] = parseInt(Math.random() * 10);
}
document.getElementById("arrayDisp").innerHTML = numbers.join(" ");
for(var i in numbers)
{
if(i%2 == 0)
{
numbers2.push('‐',i);
}
else
{
numbers2.push(i);
}
}
document.getElementById("numbers").innerHTML = numbers2.join("");
</script>
</body>
最佳答案
只需检查当前和下一个数字是否相等?
function addHyphen(str) {
var arr = str.split('');
return arr.map(function(n, i) {
return (n % 2 === 0) && (arr[i+1] % 2 === 0) ? n+'-' : n;
}).join('');
}
// provided number
var s = '43268356925485942568';
var result1 = addHyphen(s);
// create random number
var rand = (new Array(20)).join('s').split('s').map(function(x) {
return parseInt(Math.random() * 10, 10);
}).join('');
var result2 = addHyphen(rand);
document.body.innerHTML = result1 + '<br />' + result2;
关于javascript - 在数组中的偶数之间插入连字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28786789/