js如何在一个排好数组里插一个数,不改变顺序

js如何在一个排好数组里插一个数,不改变顺序

//商品置顶
    exportsTest.setFirstProduct = function(products){
        if(firstProductpmId){
            var firstProduct;
            for (var i = 0; i < products.length; i++) {
                if (products[i].pmId == firstProductpmId) {//判断该活动中有该商品,否则不变。
                    firstProduct = products[i];
                    for (var j = i; j > 0; j--) {//将当前商品移到第一个
                        if (j > 0) {//不是第一个
                            products[j] = products[j - 1]
                        }
                    }
                    products[0] = firstProduct;
                    break;
                }
            }
        }
        return products;
    }

这个算法效率比较高,其实一个for循环。你要是使用concat代码简单,但是效率会低一些。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-15
var arr = [1,2,3];
arr.push(4); // 从尾部插入
console.log(arr);

本回答被网友采纳
第2个回答  2019-03-20

var arr = [1,2,3]; 

arr.splice(i,0,a);//i是你要插入的下标;a是你要插入的值

第3个回答  2016-07-29
使用array.splice()方法本回答被提问者采纳
第4个回答  2017-08-31
插在哪里?

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网