JavaScript的数组方法
程序员文章站
2022-03-22 10:02:01
// push() 接收任意参数并把它插入到数组的最后面 返回原数组 var arr = [1, 2, 3, 4, 5]; console.log(arr.push('6')); console.log(arr); // [1,2,3,4,5,6] // pop() 从数组中删除最后一项 返回原数组 var arr = [1, 2, 3, 4]; console.log(arr.pop()); console.log(arr); ......
// push() 接收任意参数并把它插入到数组的最后面 返回原数组
var arr = [1, 2, 3, 4, 5];
console.log(arr.push('6'));
console.log(arr); // [1,2,3,4,5,6]
// pop() 从数组中删除最后一项 返回原数组
var arr = [1, 2, 3, 4];
console.log(arr.pop());
console.log(arr); // [1,2,3]
// unshift() 在数组前添加任意参数 返回原数组 如果是新变量接收返回值是新数组长度
var arr = ['purple', 'orange', 'deepink'];
console.log(arr.unshift('red', 'blue'));
console.log(arr); // ['red', 'blue','purple', 'orange', 'deepink']
// shift() 删除某个元素并返回原数组
var arr = [1, 2, 3, 4];
console.log(arr.shift(2));
console.log(arr); // [1,3,4]
// splice() 增删改功能
// 删除 spice(删除下标起始位置, 删除的个数)
var arr = [1, 2, 3, 4];
console.log(arr.splice(1, 2)); // 2,3被删除
console.log(arr); // [1,4] 当前数组
// 替换 splice(替换下标起始位置, 删除的个数, 要插入的项)
var arr = [1, 2, 3, 4];
console.log(arr.splice(0, 3, '生哥帅')); // [1,2,3]被删除替换
console.log(arr); // ['生哥帅',4]
// 增加 splice(替换下标起始位置, 删除的个数, 要插入的项....)
var arr = [1, 2, 3, 4];
console.log(arr.splice(0, 3, '生哥帅', '哈哈', '一楼说的对')); // [1,2,3]被删除替换 利用被删除的空填补上插入的值
console.log(arr); // ['生哥帅', '哈哈', '一楼说的对',4]
// concat(要合并的数组2, [9,10]) 把多个数组合并在一起返回新数组
var arr1 = [1, 2, 3, 4];
var arr2 = [5, 6, 7, 8];
var arr3 = [9, 10];
var result = arr1.concat(arr2, arr3);
console.log(result);
// 数组的join是把数组转化为字符串
// 字符串的split是把字符串转为数组
// join() 给每个字符串都拼接上指定字符串
var arr = [1, 2, 3, 4, 5];
var str = arr.join('.'); // 1.2.3.4.5
console.log(str);
split() // 字符串转化的数组
var result = str.split('--');
console.log(result); // ["1.2.3.4.5"]
// reverse() 反转数组 返回原数组
var arr = [1, 2, 3, 4, 5];
console.log(arr.reverse()); // [5, 4, 3, 2, 1]
// slice() 选中当前数组中的某个元素,返回一个新数组 (不会影响原数组)
var arr = [1, 2, 3, 4, 5];
var res = arr.slice(0, 1);
console.log(res); // [1]
// sort(函数参数) 升序和降序() 排序后改变原数组
var arr = [1, 2, 3, 4, 5, 6, 7, 8];
// // 升序
var res = arr.sort(function (val1, val2) {
return val1 - val2;
})
console.log(res); // [1, 2, 3, 4, 5, 6, 7, 8]
// // 降序
var res = arr.sort(function (val1, val2) {
return val2 - val1;
})
console.log(res); // [8, 7, 6, 5, 4, 3, 2, 1]
// toString() 把数组转化为字符串
var arr = [1, 2, 3, 4, 5];
console.log(arr.toString()); // 1,2,3,4,5
// indexOf(要查找的值, 数组下标) 找得到返回下标 找不到返回-1
var arr = [1, 2, 3, 4, 5];
var arr2 = ['red', 'blue', 'yellow']
console.log(arr.indexOf(1, 0));
console.log(arr2.indexOf('blue', 0));
// forEach() 遍历数组值和索引 没有返回值 强行返回值是undefined
var arr = [1, 2, 3, 4, 5, 6, 7, 8];
arr.forEach(function (value, index) {
console.log(value, '-----------', index);
}) // 1 "-----------" 0 ...
// map() 对数组中的每个索引添加到函数后面,函数把每次接收到的返回给一个新数组
var arr = ['purple', 'orange', 'deepink'];
var res = arr.map(function (val1, index) {
return val1 + index;
})
console.log(res); // ["purple0", "orange1", "deepink2"]
// filter() 接收一个函数为参数,f如果这个数组符合参数中条件的元素,那么把符合的返回给一个新数组 过滤器
var arr = ["purple", "orange", "deepink"];
var res = arr.filter(function (val1, index) {
// 如果值里有orange的就去掉 然后把符合条件true的元素返回给一个新数组
if (val1 == 'orange') {
return false;
}
return true;
})
console.log(res); // ['purple','deepink']
// every() 类似于逻辑与 接收一个函数当参数,如果全部符合条件都为true 那么返回true 布尔值
var arr = [1, 2, 3, 4, 5, 6];
var res = arr.every(function (val1, index) {
// 如果全部符合条件 那么返回true
if (val1 > 0) {
return true;
}
return false;
})
console.log(res);
// some() 接收一个函数当参数,;类似于逻辑或,只要有一项符合就返回true
var arr = [1, 2, 3, 4, 5, 6];
var res = arr.some(function (val1, index) {
// 6符合条件 所以返回true
if (val1 > 5) {
return true;
}
return false;
});
console.log(res);
// isArray 判断是否为数组 返回值是布尔值
var arr = [1, 2, 3, 4, 5];
console.log(Array.isArray(arr)); // true
// form() 用于将类数组转化为真正的数组
var arr = [1, 2, 3, 4];
function test() {
var res = arr.form(arguments);
console.log(res);
}
test();
// Array.of() 将一组数值转化为数组 返回新数组
var res = Array.of(1, 2, 3, 4, 5);
console.log(res); // [1, 2, 3, 4, 5]
本文地址:https://blog.csdn.net/Steven_Son/article/details/107457397
上一篇: webpack-配置文件的分离