javascript - 在数组中的偶数之间插入连字符

标签 javascript arrays

我试图在数组中的偶数之间插入一个连字符“-”,所以如果我有 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/

相关文章:

java - 我无法使用 JAX-WS 返回数组 String[]

javascript - 我在警告框中得到功能代码,这是为什么?

javascript - 仅向特定页面添加后退按钮事件监听器

javascript - ng-repeat 和一个带有 3 个数组的 json

javascript - 根据条件在动态表中显示数组值

c++ - 指向类成员的函数指针生成编译器错误

javascript - 编写一个简单的自定义编辑器需要多快?

javascript - 有人在 Angular 中提交表单后如何显示感谢消息?

javascript - 陷入实现嵌套数据过滤循环的困境,这可能是一种更优雅的方法吗?

java - 计算 "Flower Objects"数组中出现的次数