第一个和第二个,都是对新数组或新json进行操作,而第三个是对原数组本身进行indexOf.第一个是用新数组的indexOf来判断是否有重复元素,而第二个是通过nHash[item]来判断是否存在. var array = [1, 2, 3, 2, 1]; Array.prototype.unique1 = function () { var nArray = []; // 新建一个数组 console.log(this, 'this的值'); for (var i = 0, len = thi…
我们在操作数组时,加入数组中是以对象的形式存在,例如: 那么我们会涉及到去重复,去掉为0的数组中的对象,js代码如下: function getItemList(gid, totalMoney, addNum) { var data = { "SI_GID": gid, "TotalMoney": totalMoney, "TotalNum": addNum }; if (addNum > 0) { if (hotelList.length…
一.问题描述: 将0移到最后,在原数组操作,并且不能改变源数据顺序. 示例:输入:[2,0,0,1,0,3], 结果:[2,1,3,0,0,0] 二.问题分析与解决: 注意是在原数组上操作,不要进行任何数组拷贝操作,还要保证操作后的源数据顺序不变. 直接上JS代码: //ES6箭头函数写法 const moveZero = (arr) => { let y = 0;//定义y用于控制循环结束 for (let i = 0; y < arr.length; y++) { if (arr[i]…
一.数组的声明方式: var colors = new Array();//创建数组 var colors = new Array(20);//创建20个长度的数组 var colors = new Array("Greg");//创建字符串数组 var name=[];//空数组 var a = [[1,2],[3,4]];//多维数组 关联数组: var lennon = Array (); lennon["name"] = "john";…