内置对象
1 1)检测一个对象是否是数组 2 instanceof 会沿着原型链往上匹配 3 var arr = ['张三', '李四']; 4 console.log(arr instanceof Array); true 5 console.log(arr instanceof Function); false 6 console.log(arr instanceof Object); true 7 8 9 var arr = ['张三', '李四']; 10 var obj = {}; 11 console.log(Array.isArray(arr)); true 12 console.log(Array.isArray(obj));
1 2) toString() 把数组转换成字符串,逗号分隔每一项 2 var arr = ['张三', '李四']; //张三,李四 3 console.log(arr.toString());
1 valueOf() 返回数组对象本身 2 console.log(arr.valueOf());
concat() 连接两个或更多的数组,并返回结果。 var arr = [1, 233, 23]; var arr1 = ['张三', '李四']; var arr2 = ['张三四十', '哈哈哈']; var copyArr = arr.concat(arr1, arr2, 1, 2, 4); console.log(copyArr);
1 arr.forEach(function(value , index , obj){ 2 console.log(value); 3 }); 4 5 //value 是值 index为索引 obj数组本身
var arr = ['张三', '李四', '王五', '赵柳'];
arr.forEach(function (value, index, array) {
console.log(value, index, array);
});
1 8) sort() 2 var arr = ['Tim', 'Andy', 'John', 'Kobe', 'James']; 3 console.log(arr.sort()); 4 5 var arr = ['10', '20', '5', '1000', '50']; 6 console.log(arr.sort()); 7 8 /*function sortNumber(a, b) { 9 return b.length - a.length; // >0 =0 <0 10 //最长的放在前面 后面的-前面的,大的放在最前面 11 }*/ 12 13 /*var arr = ['Tim', 'Andy', 'John', 'Kobe', 'James']; 14 console.log(arr.sort(sortNumber));*/
1 9) map 2 var arr = [10, 20, 5, 1000, 50]; 3 var newArr = arr.map(function (value, index, array) { 4 return value * 2 + 100;
//【120,140,110,2100,200】 5 }); 6 console.log(newArr);
1 10) filter() 2 var arr = [1, 2, 3, 4, 5, 6, 7, 8]; 3 var newArr = arr.filter(function (value, index, array) { 4 return value % 2 === 0 || value > 5;
//返回符合条件的新数组 5 }); 6 console.log(newArr);
1 11) every(且) 2 var arr = [11, 2, 3, 4, 15]; 3 var result = arr.every(function (value, index) { 4 return value > 4;
//返回布尔类型 false 5 }); 6 console.log(result);
1 11) some(且) 2 var arr = [11, 2, 3, 4, 15]; 3 var result = arr.some(function (value, index) { 4 return value > 100; 5 /返回true false 6 }); 7 console.log(result);