数组方法
<script>
// 一.判断是否为数组
// 1.instanceof 可以判断一个对象是否是某个构造函数的实例
var arr = [1, 23];
var obj = {};
console.log(arr instanceof Array); // true
console.log(obj instanceof Array); // false
// 2.Array.isArray()用于判断一个对象是否为数组,isArray() 是 HTML5 中提供的方法
console.log(Array.isArray(arr)); // true
console.log(Array.isArray(obj)); // false
// 二.添加、删除数组元素
// 1.push(数组末尾添加)、unshift(数组开头添加)为增加元素方法;
arr.push(4, 'pink');
console.log(arr.push(4, 'pink')); //返回数组长度
console.log(arr);
arr.unshift(0000);
console.log(arr.unshift(0000)); //返回数组长度
console.log(arr);
// 2.pop(删除最后一个)、shift(删除第一个)为删除元素的方法
arr.pop();
console.log(arr.pop()); //返回被删除的元素
console.log(arr);
arr.shift();
console.log(arr.shift()); //返回被删除的元素
console.log(arr);
// 三.数组排序
// 1.反转数组
var arr1 = [4, 3, 21]
arr1.reverse();
console.log(arr1);
// 2.排序
// 传入“function(a,b){ return a-b;}”,则为升序
// 传入“function(a,b){ return b-a;}”,则为降序
arr1.sort(function (a, b) {
return a - b;
});
console.log(arr1);
arr1.sort(function (a, b) {
return b - a;
})
console.log(arr1);
// 四.数组索引
// 1.indexOf()方法
console.log(arr1.indexOf(21)); // 只返回数组中的第一个指定的元素,找不到返回-1
// 2.lastIndexOf()方法
console.log(arr1.lastIndexOf(21)); // 只返回数组中的最后一个指定的元素,找不到返回-1
// 五.数组转换为字符串
// 1.arr.toString()方法
var arr2 = [1, 2, 3, 4];
console.log(arr2.toString());
// 2.join(分隔符)方法
console.log(arr2.join('+'));
</script>
数组案例
// 1.筛选数组
var salary = [1500, 1200, 2000, 2100, 1800];
var res = [];
function shaiXuan() {
for (let index = 0; index < salary.length; index++) {
if (salary[index] < 2000) {
// res[res.length] = salary[indenx];
res.push(salary[index]);
};
}
return res;
}
console.log(shaiXuan(salary));
// 2.数组去重
var arr1 = ['a', 's', 's', 'd', 'f', 'g', 'h', 'j'];
var res1 = [];
function quChong(arr) {
for (let index = 0; index < arr1.length; index++) {
if (res1.indexOf(arr1[index]) === -1) {
res1.push(arr1[index]);
}
}
return res1;
}
console.log(quChong(arr1));
</script>