<script>
//1.isArray() 判断是否为数组
var arr1 = [12, 3, 4, 5];
var boo1 = Array.isArray(arr1);
console.log(boo1); //true
//2.includes() 判断数组是否有指定的值
var arr2 = ['a', 'b', 'c', 'd'];
var boo2 = arr2.includes('a');
console.log(boo2); //true
//3.join() 把数组中的元素放到一个字符串中
var arr3 = ['a', 'b', 'c', 'd'];
var boo3 = arr3.join();
console.log(boo3); //'a,b,c,d'
//4.reverse() 翻转数组中元素的顺序
var arr4 = ['a', 'b', 'c', 'd'];
var newArr4 = arr4.reverse();
console.log(newArr4); //['d','c','b','a']
//5.slice() 截取部分元素,返回新的数组
var arr5 = [1, 2, 2, 3, 3, 3, 4, 4, 55]
var boo5 = arr5.slice(2, 5)
console.log(boo5); //[2,3,3]
//6.pop() 删除数组的最后一个元素并返回删除的元素
var arr6 = [1, 2, 3]
arr6.pop();
console.log(arr6); //[1,2]
//7.push() 向数组的末尾添加一个或者更多的元素,并返回心得长度
var arr7 = [1, 2, 3]
arr7.push(4);
console.log(arr7); //[1,2,3,4]
//8.shift() //前面添加
//9.unshift() //前面删除
console.log("----------------------------------");
//10. map() 对原来成员改头换面,传入一个函数, 返回一个新的数组
var arr10 = [{
name: 'zs',
age: '10'
}, {
name: 'ls',
age: '12'
}, {
name: 'we',
age: '13'
}];
var newArr10 = arr10.map(function (item, index) {
//
var $name = item.name.toUpperCase();
return {
name: $name,
age: item.age - 10
};
})
console.log(newArr10); //
//11.filter() 检测数组元素,并返回符合条件所有元素的数组
var arr11 = [{
name: 'zs',
age: '10'
}, {
name: 'ls',
age: '12'
}, {
name: 'we',
age: '13'
}];
var newArry11 = arr11.filter(function (item, index) {
return item.age >= '12'
})
console.log(newArry11);
//12.forEach 遍历数组
var arr12 = [{
name: 'zs',
age: '10'
}, {
name: 'ls',
age: '12'
}, {
name: 'we',
age: '13'
}];
var str = '';
arr12.forEach(function (item, index) {
str += item.age + ',';
});
console.log(str); //'10,12,13'
console.log("----------------------------------");
//13 find() 返回符合条件的数组元素 只返回符合条件的第一个成员
var arr13 = [{
name: 'zs',
age: '10'
}, {
name: 'ls',
age: '12'
}, {
name: 'we',
age: '13'
}];
var newArr13 = arr13.find(function (item, index) {
return item.name === 'zs';
})
console.log(newArr13);
//14 findIndex() 返回符合传入测试(函数)条件的数组元素索引。
var arr14 = [{
name: 'zs',
age: '10'
}, {
name: 'ls',
age: '12'
}, {
name: 'we',
age: '13'
}];
var newArr14 = arr14.findIndex(function (item, index) {
return item.name === 'zs';
})
console.log(newArr14); //0
// 15. indexOf() 搜索数组中的元素,并返回它所在的位置。
// 16. lastIndexOf() 搜索数组中的元素,并返回它最后出现的位置。
//17.some() some() 检测数组元素中是否有元素符合指定条件。 // 用来判断数组是否包含符合条件的成员, 包含返回 true, 不包含返回 false
var arr17 = [{
name: 'zs',
age: '10'
}, {
name: 'ls',
age: '12'
}, {
name: 'we',
age: '13'
}];
var newArr17 = arr17.some(function (item, index) {
return item.age > 10;
})
console.log(newArr17); //true
//18.splice() // 18. splice() 从数组中添加或删除元素。参数可以是2个或者3个
var arr18 = [{
name: 'zs',
age: '10'
}, {
name: 'ls',
age: '12'
}, {
name: 'we',
age: '13'
}];
arr18.splice(1, 2) //两个参数 第一个参数表示下标,第二个参数,表示删除的成员个数
console.log(arr18);
var $arr18 = [{
name: 'zs',
age: '10'
}, {
name: 'ls',
age: '12'
}, {
name: 'we',
age: '13'
}];
var item = {
name: 'zhanghuan',
age: 18
}
$arr18.splice(1, 2, item) //三个参数 第一个参数表示下标,第二个参数,表示删除的成员个数
console.log($arr18);
//19.sort() 对数组的元素进行排序
var arr19 = ['a', 'c', 'x', 'd'] //按26个英文字母排序
arr19.sort()
console.log(arr19); // ["a", "c", "d", "x"]
var arr19 = [1, 4, 10, 20]
arr19.sort();
console.log(arr19); //[1,10,20,4]
//传入一个函数参数 a-b升序排列 b-a降序排列
console.log('---------- 19. sort(),传入函数 ----------------')
var newArr19 = arr19.sort(function (a, b) {
return a - b;
})
console.log(newArr19); //[1,4,10,20]
console.log('---------- 19. sort(),成员是对象 ----------------')
//成员是对象
var arr19 = [{
name: 'zhangsan',
age: 10
}, {
name: 'lisi',
age: 20
}, {
name: 'wangwu',
age: 30
}, {
name: 'chenliu',
age: 18
}];
var newArr=arr19.sort(function(a,b){
var nameA=a.name;
var nameB=b.name;
if(nameA>nameB){
return 1;
}else if(nameA<nameB){
return -1;
}else{
return 0;
}
})
console.log(newArr19);
</script>