数组
数组的定义:
var arr=[1,2,3];
Var arr = new Array(1,2,3);
//第一种性能较好
数组中length属性代表数组的长度
var arr=new Array({});
console.log(arr);
//数组的赋值
arr[0]=1;
arr[1]="a";
arr[2]=null;
arr[3]={};
arr[4]=true;
arr[5]=undefined;
arr[6]=function(){};
console.log(arr[0]);
数组的简化声明
var a=[1,2,3,4];
var b=[4,5,6];
console.log(a.concat(b));
//concat 也可以合并数组 返回新的数组
console.log(a.filter(function (val, index, arr) {
return val;
}));
//filter 过滤 返回过滤出的值
a.forEach(function (val, index, arr) {
arr[index]+=val;
})
console.log(a.indexOf(2));
//数组的遍历 没有返回值 能影响到原数组
var b=a.map(function (val, index, arr) {
return val*val;
})
console.log(b,a);
//map 相当遍历数组 映射一个新的数组
console.log(a.slice(1, 3));
console.log(a);
//slice 返回值是截取的数组 对原数组无影响
console.log(a.splice(0, 3));
console.log(a);
//splice 截断数组 对原数组有影响
a.push(9)
console.log(a);
//追加 push 数组的后边追加 返回值是数组的长度
a.unshift(7) //返回数组的长度
console.log(a);
//往前追加
a.shift()
console.log(a)
//数组里面的删除 数组的前删
a.pop();
console.log(a);
//数组的后删除
a.push(9);
a.push(10);
a.splice(1,1);
console.log(a);
//翻转数组
a.reverse();
console.log(a);
//排序方法
var b=[2,1,4,3,6,5];
//sort 默认小-大排序
console.log(b.sort());
//大-小
b.sort(function (n1,n2){
return n1-n2;
});
console.log(b);
//some 方法 检测数组里面的值 返回值是true false
console.log(b.some(function (val, index, arr) {
return val == 11;
}));
//reduce 累加器
console.log(b.reduce(function (totle, current, index) {
console.log(totle,current);
return totle *= current;
}));