js数组都使用哪些常用的方法?
时间: 2023-12-02 12:06:16 浏览: 42
JavaScript数组有很多常用的方法,其中一些包括:
1. push():向数组末尾添加一个或多个元素
2. pop():从数组末尾删除一个元素
3. shift():从数组头部删除一个元素
4. unshift():向数组头部添加一个或多个元素
5. slice():返回一个新的数组,包含从开始到结束(不包括结束)的元素
6. splice():删除或替换数组中的元素
7. indexOf():返回数组中元素的位置
8. forEach():对数组中的每个元素执行指定操作
9. map():创建一个新的数组,其中每个元素都是原始数组元素的结果
10. filter():创建一个新的数组,其中仅包含满足指定条件的元素
还有很多其他可用的方法,这些只是其中的一些!
相关问题
Js数组方法都有哪些?如何使用?
Js数组方法有很多,以下是其中一些常见的:
1. push():向数组末尾添加一个或多个元素,并返回修改后的数组长度。
```
var fruits = ["apple", "banana"];
fruits.push("orange"); // ["apple", "banana", "orange"]
```
2. pop():从数组末尾删除一个元素,并返回该元素的值。
```
var fruits = ["apple", "banana", "orange"];
var deletedFruit = fruits.pop(); // "orange"
```
3. shift():从数组开头删除一个元素,并返回该元素的值。
```
var fruits = ["apple", "banana", "orange"];
var deletedFruit = fruits.shift(); // "apple"
```
4. unshift():向数组开头添加一个或多个元素,并返回修改后的数组长度。
```
var fruits = ["apple", "banana"];
fruits.unshift("orange"); // ["orange", "apple", "banana"]
```
5. slice():返回数组的一部分,不会修改原数组。
```
var fruits = ["apple", "banana", "orange", "peach"];
var slicedFruits = fruits.slice(1, 3); // ["banana", "orange"]
```
6. splice():在数组中添加或删除元素,会修改原数组。
```
var fruits = ["apple", "banana", "orange", "peach"];
fruits.splice(1, 2, "grape", "lemon"); // ["banana", "orange"]
// fruits变为["apple", "grape", "lemon", "peach"]
```
7. concat():将多个数组合并成一个新数组。
```
var fruits1 = ["apple", "banana"];
var fruits2 = ["orange", "peach"];
var allFruits = fruits1.concat(fruits2); // ["apple", "banana", "orange", "peach"]
```
8. join():将数组中的所有元素转化为字符串,并用指定的分隔符连接起来。
```
var fruits = ["apple", "banana", "orange"];
var fruitStr = fruits.join(", "); // "apple, banana, orange"
```
9. indexOf():返回指定元素在数组中第一次出现的位置,如果不存在则返回-1。
```
var fruits = ["apple", "banana", "orange"];
var index = fruits.indexOf("banana"); // 1
```
10. forEach():对数组中的每个元素执行指定操作。
```
var fruits = ["apple", "banana", "orange"];
fruits.forEach(function(fruit) {
console.log(fruit);
});
// 输出:
// "apple"
// "banana"
// "orange"
```
以上只是一小部分Js数组方法,还有很多其他方法。要学习如何使用它们,可以参考相关文档或书籍。
js数组去重有哪些方法?
JavaScript数组去重的方法有以下几种:
1. 使用Set数据结构(ES6):Set是ES6中的新数据结构,可以自动去重。将数组转为Set,再将Set转回数组即可。
```
let arr = [1, 2, 3, 2, 1];
let newArr = Array.from(new Set(arr));
console.log(newArr); // [1, 2, 3]
```
2. 使用indexOf方法:遍历原数组,将每个元素与新数组进行比较,如果新数组中不存在该元素,则将其添加到新数组中。
```
let arr = [1, 2, 3, 2, 1];
let newArr = [];
for (let i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) === -1) {
newArr.push(arr[i]);
}
}
console.log(newArr); // [1, 2, 3]
```
3. 使用includes方法(ES7):与indexOf方法类似,includes方法也可以判断一个元素是否存在于数组中。
```
let arr = [1, 2, 3, 2, 1];
let newArr = [];
for (let i = 0; i < arr.length; i++) {
if (!newArr.includes(arr[i])) {
newArr.push(arr[i]);
}
}
console.log(newArr); // [1, 2, 3]
```
4. 使用filter方法:使用filter方法过滤掉重复元素。
```
let arr = [1, 2, 3, 2, 1];
let newArr = arr.filter((item, index) => {
return arr.indexOf(item) === index;
});
console.log(newArr); // [1, 2, 3]
```
5. 使用reduce方法:使用reduce方法合并数组,同时去除重复元素。
```
let arr = [1, 2, 3, 2, 1];
let newArr = arr.reduce((prev, cur) => {
if (prev.indexOf(cur) === -1) {
prev.push(cur);
}
return prev;
}, []);
console.log(newArr); // [1, 2, 3]
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)