Array 对象
JavaScript的 Array 对象是用于构造数组的全局对象,数组是类似于列表的高阶对象。
Array 对象用于在变量中存储多个值:
var cars = ["Saab", "Volvo", "BMW"];
数组属性
| 方法 |
描述 |
| constructor |
返回创建数组对象的原型函数。 |
| length |
设置或返回数组元素的个数。 |
| prototype |
允许你向数组对象添加属性或方法。 |
Array 对象方法
| 方法 |
描述 |
| concat() |
连接两个或更多的数组,并返回结果。 |
| copyWithin() |
从数组的指定位置拷贝元素到数组的另一个指定位置中。 |
| entries() |
返回数组的可迭代对象。 |
| every() |
检测数值元素的每个元素是否都符合条件。 |
| fill() |
使用一个固定值来填充数组。 |
| filter() |
检测数值元素,并返回符合条件所有元素的数组。 |
| find() |
返回符合传入测试(函数)条件的数组元素。 |
| findIndex() |
返回符合传入测试(函数)条件的数组元素索引。 |
| forEach() |
数组每个元素都执行一次回调函数。 |
| from() |
通过给定的对象中创建一个数组。 |
| includes() |
判断一个数组是否包含一个指定的值。 |
| indexOf() |
搜索数组中的元素,并返回它所在的位置。 |
| isArray() |
判断对象是否为数组。 |
| join() |
把数组的所有元素放入一个字符串。 |
| keys() |
返回数组的可迭代对象,包含原始数组的键(key)。 |
| lastIndexOf() |
搜索数组中的元素,并返回它最后出现的位置。 |
| map() |
通过指定函数处理数组的每个元素,并返回处理后的数组。 |
| pop() |
删除数组的最后一个元素并返回删除的元素。 |
| push() |
向数组的末尾添加一个或更多元素,并返回新的长度。 |
| reduce() |
将数组元素计算为一个值(从左到右)。 |
| reduceRight() |
将数组元素计算为一个值(从右到左)。 |
| reverse() |
反转数组的元素顺序。 |
| shift() |
删除并返回数组的第一个元素。 |
| slice() |
选取数组的一部分,并返回一个新数组。 |
| some() |
检测数组元素中是否有元素符合指定条件。 |
| sort() |
对数组的元素进行排序。 |
| splice() |
从数组中添加或删除元素。 |
| toString() |
把数组转换为字符串,并返回结果。 |
| unshift() |
向数组的开头添加一个或更多元素,并返回新的长度。 |
| valueOf() |
返回数组对象的原始值。 |
案例一:
<script>
// 定义一个函数实现数组翻转效果,要求函数传入的参数必须是一个数组,例如[1,2,3,4,5]输出结果为[5,4,3,2,1]
// 第一种方法
function reverse(arr) {
if (Array.isArray(arr)) {
var newArray = [];
for (var i = arr.length - 1; i >=0; i--){
newArray[newArray.length] = arr[i];
}
return newArray;
}
return '你输入的不是一个数组!'
}
console.log(reverse([1,2,3,7,8,14]));
// 第二种方法
function inputArr(arr) {
if (Array.isArray(arr)) {
return arr.reverse();
}
return '你输入的不是一个数组!';
}
console.log(inputArr([1,2,3,7,8,14]));
</script>
案例二:
<script>
// 数组排序(冒泡排序)
// 方法一
var arr = [9, 8, 5, 6, 1, 3];
arr.sort();
console.log(arr); // 注:sort方法排序只针对于个位数排序,若数组包含个位以上元素,则用以下方法。
// 方法二
var arr1 = [9, 8, 5, 6, 1, 3];
arr1.sort(function(a,b) {
return a - b; // 从小到大排序
})
console.log(arr1);
var arr2 = [9, 8, 5, 6, 1, 3];
arr2.sort(function(a,b) {
return b - a; // 从大到小排序
})
console.log(arr2);
</script>