var arr = new Array(2); //定义一个数组
arr[0] = 'a0';
arr[1] = 'a1';
arr[2] = 'a2'; //数组大小可动态变化,赋了3个元素
// var arr=['a1','a2','a3'] 定义数组推荐的方式
arr[4] = 4; //数组中的元素可以是不同类型
console.log(arr[3]); //undefined 不定义值也是可以的
arr[3] = 'a3';</span></span>
console.log(arr.toString()); //a0,a1,a2,a3,4 Array重写了toString()方法
//当前对象是数组么?
console.log(Object.prototype.toString.call(arr) === '[object Array]'); //true
arr.push('p1'); //添加元素到数组结尾
console.log(arr.toString()); //a0,a1,a2,a3,4,p1
arr.unshift('unsf1'); //添加元素到数组开头
console.log(arr.toString()); //unsf1,a0,a1,a2,a3,4,p1
arr.pop(); // 删除掉数组结尾元素
console.log(arr.toString()); //unsf1,a0,a1,a2,a3,4
arr.shift(); //删除掉数组头元素
console.log(arr.toString()); //a0,a1,a2,a3,4</span></span>
var arr1 = [1,2,9,23,7];
var newArr = arr1.slice(0); //克隆arr1 不让arr1值受影响
// var newArr = arr1.contact(); 这样克隆也是可以的
newArr.reverse() //将数组倒过来
console.log(newArr.toString()); //7,23,9,2,1
newArr = arr1.slice(0);
newArr.sort(); //将数组排序
console.log(newArr.toString()); //1,2,23,7,9
newArr = arr1.slice(0);
newArr.sort(function(a,b){ //重新排序,我要的不是那个
return a - b;
});
console.log(newArr.toString()); //1,2,7,9,23</span></span>JS数组的其它API - splice
var arr2 = [1,2,9,23,27,5,4];
arr2.splice(3,2); //删除从下标为3开始的后2个元素
console.log(arr2.toString()); //1,2,9,5,4
// 在下标为为3后插入 in1 in2 in3
arr2.splice(3,0,'in1','in2','in3');
console.log(arr2.toString()); //1,2,9,in1,in2,in3,5,4
</span></span>
// arr2 = 1,2,9,in1,in2,in3,5,4
//只要数组里的类型为数字的元素
var arr3 = arr2.filter(function(ele,index,arr2) {
return typeof ele == 'number';
});
// 现在数组里元素都是数字了吧?
var isAllNumber = arr3.every(function(ele,index,arr3){
return typeof ele == 'number';
});
//注意:原数组的值是不变的
console.log(arr2.toString()); //1,2,9,in1,in2,in3,5,4
console.log(arr3.toString()); //1,2,9,5,4
console.log(isAllNumber); // true
// 数组中每个元素都要翻10倍
var arr4 = arr3.map(function(ele,index,arr2) {
return ele*10;
});
console.log(arr4.toString()); //10,20,90,50,40
var arr5 = arr4.slice(1,3); //只要下标为2或3的元素
console.log(arr5.toString()); // 20,90
arr5.forEach(function(ele,index,arr){
console.log("模拟插入元素到数据库:"+ele);
});
//模拟插入元素到数据库:20
//模拟插入元素到数据库:90</span></span>总结
4950



被折叠的 条评论
为什么被折叠?



