// 1. sort
var arr = [100, 10, 8, -10, 1000];
console.log(arr);
console.log(arr.sort(function (a, b) {
return a - b;
}));
console.log(arr.sort(function (a, b) {
return b - a;
}));
·sort -->在默认情况下,sort( ) 方法按升序排列数组项---即最小的值位于最前面,为了实现排序,sort( )方法会调用每个数组项的toString( )转型方法,然后比较得到的字符串。
sort( ) 可以接受一个比较函数作为参数。比较函数接受两个参数,如果第一个参数应该位于第二个之前则返回一个负数,如果两个参数相等,则返回0,如果第一个参数应该位于第二个之后则返回一个正数。
补充:reverse( ) 函数 用于反转数组。
// 2. slice()
var arr = [1, 3, 5, 7, 9, 11];
var arr1 = arr.slice(1);
var arr2 = arr.slice(1, 4);
var arr3 = arr.slice(1, -2);
var arr4 = arr.slice(-4, -1);
console.log(arr1);
console.log(arr2);
console.log(arr3);
console.log(arr4);
·slice()--> 能够基于当前数组中的一个或多个项创建一个新数组。可以接受一个或两个参数,即要返回项的起始和结束位置。在只有一个参数的情况下,slice( ) 返回从该参数指定位置开始到当前数组末尾的所有项。如果两个参数,该方法返回起始位置和结束位置之间的项---但不包括结束位置的项。如果参数中有一个负数,则用数组长度加上该数来确定相应的位置。
ps: 该方法不会影响原数组。
// 3.splice()
var arr = [1, 3, 5, 7, 9, 11];
var removeArr = arr.splice(0, 3);
console.log(arr);
console.log(removeArr);
arr.splice(2,0, "哈哈哈", "哈哈哈", "测试");
console.log(arr);
arr = [];
arr.splice(0, 1);
console.log(arr);
·splice( ) --> 主要用途是向数组的中部插入项。
1.删除 : 可以删除任意数量的项,只需指定2个参数:要删除的第一项的位置和要删除的项数。
2.插入: 可以向指定位置插入任意数量的项,只需提供3个参数:起始位置、0和要插入的项。
3.替换: 可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需提供3个参数:起始位置、要删除的项数和要插入的任意数量的项。
// 4. forEach
var arr = [1, 3, 5, 7, 9, 11, "哈哈哈"];
arr.forEach(function (value, index) {
console.log(index + ":" + value);
// 5. map()
var arr = [1, 3, 5, 7, 9, 11];
var arr2 = arr.map(function (value, index) {
return value * value + 10;
});
console.log(arr2);
// 6. filter()
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
var arr2 = arr.filter(function (value, index) {
return index % 2 === 0 || value > 9;
});
console.log(arr2);
// 7. every()
var arr = [11, 2, 3, 4, 15];
var result = arr.every(function (value, index) {
return value < 10;
});
console.log(result);
// 8. some()
var arr = [11, 21, 31, 14, 15];
var result = arr.some(function (value, index) {
return value < 10;
});
console.log(result);