1、定义和添加
// 1、数组定义 // 1.1 var array = new Array(); // 1.2 var array1 = []; // 2、添加 array.push("元素b"); array1.push("元素a"); array1.push("元素b"); array1.push("元素c"); array1.push("元素d"); array1.push(1); console.log("array1:" + array1); console.log("array:" + array); array.push(array1); console.log("array添加array1后的array:" + array); var map = {1: "a", 2: "b"}; console.log("map:" + map); console.log("Object.keys(map).length:" + Object.keys(map).length); for (key in map) { console.log(key + ":" + map[key]); } array.push(map); console.log("array添加map后的array:" + array);
2、删除
// 删除:都是一个意思,只是方式不一样 // 1、给数组添加一个删除的方法 Array.prototype.remove = function(val) { var index = this.indexOf(val); if (index > -1) { this.splice(index, 1); } }; console.log("array1:" + array1); array1.remove("元素b"); console.log("array1删除元素b后:" + array1); // 2 if (-1 != array1.indexOf("元素c")) { array1.splice(array1.indexOf("元素c"), 1); } console.log("array1删除元素c后:" + array1); // 3 array1.indexOf("元素d") != -1 ? array1.splice(array1.indexOf("元素d"), 1) : 0; console.log("array1删除元素d后:" + array1);
注:1、定义了Array.prototype.remove时,for(var i in array)遍历数组时会多一个array[remove]=undefined出来,此时要用for(var i = 0, length=array.length; i < length; i++)这样遍历数组。
2、遍历数组时删除数组元素时记得后面加上i--
3、替换
console.log("array1:" + array1); array1.indexOf("元素a") != -1 ? array1.splice(array1.indexOf("元素a"), 1, "元素e") : 0; console.log("array1替换元素a为元素e后:" + array1);
4、遍历
console.log("array1:" + array1); for (index in array1) { console.log(index + ":" + array1[index]); }