Maison > interface Web > js tutoriel > Résumé de 20 opérations courantes sur les tableaux JavaScript

Résumé de 20 opérations courantes sur les tableaux JavaScript

藏色散人
Libérer: 2023-04-20 15:43:34
avant
1617 Les gens l'ont consulté

L'objet Array en JavaScript, comme les tableaux dans d'autres langages de programmation, est une collection de données. En JavaScript, les données contenues dans un tableau peuvent être de différents types et disposent de méthodes permettant d'effectuer des opérations courantes sur les tableaux. Array对象与其他编程语言中的数组一样,是一组数据的集合。在JavaScript中,数组里面的数据可以是不同类型的,并具有用于执行数组常见操作的方法。

声明数组

有三种不同的声明方式

1. 常规方式

const hobbys = new Array()
hobbys[0] = 'Basketball'
hobbys[1] = 'Badminton'
hobbys[2] = 'swimming'
console.log(hobbys)
// [ 'Basketball', 'Badminton', 'swimming' ]
Copier après la connexion

2. 简洁方式

const hobbys = new Array('Basketball', 'Badminton','swimming')
console.log(hobbys)
// [ 'Basketball', 'Badminton', 'swimming' ]
Copier après la connexion

3. 字面

const hobbys = ['Basketball','Badminton','swimming']
console.log(hobbys)
// [ 'Basketball', 'Badminton', 'swimming' ]
Copier après la connexion

Array 对象方法

1. forEach

forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。没有返回值,本质上等同于 for 循环,对每一项执行 function 函数。不会改变原数组。

// currentValue:必需,当前元素 index:可选,当前元素的索引值 arr:可选,当前元素所属的数组对象。
array.forEach(function(currentValue, index, arr))
Copier après la connexion
let array = ['a', 'b', 'c']
let func = (currentValue, index, arr) => {
  currentValue += 's'  
  console.log('currentValue:' + currentValue + ' index:' + index + ' arr:' + arr)
}
array.forEach(func)
console.log(array)

// 控制台输出:
// currentValue:as index:0 arr:a,b,c
// currentValue:bs index:1 arr:a,b,c
// currentValue:cs index:2 arr:a,b,c
// [ 'a', 'b', 'c' ]
Copier après la connexion

2. map

通过指定函数处理数组的每个元素,并返回处理后的数组。

map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。方法按照原始数组元素顺序依次处理元素。不会改变原数组。

// currentValue:必须,当前元素的值  index:可选,当前元素的索引值 arr:可选,当前元素属于的数组对象
array.map(function(currentValue,index,arr))
Copier après la connexion
let array = [1, 2, 3, 4, 5]
let result = array.map((item) => { 
  return item += 5
})
console.log(array)
console.log(result)
// [ 1, 2, 3, 4, 5 ]
// [ 6, 7, 8, 9, 10 ]
Copier après la connexion

3. concat

JavaScript中的 concat() 方法用来连接两个或更多的数组,并返回结果。

// array1, array2, ..., arrayN 必需,该参数可以是具体的值,也可以是数组对象,可以是任意多个
array1.concat(array2,array3,...,arrayN)
Copier après la connexion
const array1 = ['a', 'b', 'c']
const array2 = ['d', 'e', 'f']
const array3 = array1.concat(array2)
console.log(array3)
const array4 = array1.concat('123')
console.log(array4)
// [ 'a', 'b', 'c', 'd', 'e', 'f' ]
// [ 'a', 'b', 'c', '123' ]
Copier après la connexion

4. push

Javascript数组中的 push() 方法用来向数组的末尾添加一个或更多元素,并返回新的长度。

let fruits = ["Banana", "Orange", "Apple", "Mango"]
let length = fruits.push("Kiwi")
console.log(fruits)
console.log(length)
// [ 'Banana', 'Orange', 'Apple', 'Mango', 'Kiwi' ]
// 5
Copier après la connexion

5. unshift

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

let fruits = ["Banana", "Orange", "Apple", "Mango"]
let length = fruits.unshift("Lemon", "Pineapple")
console.log(fruits)
console.log(length)
// [ 'Lemon', 'Pineapple', 'Banana', 'Orange', 'Apple', 'Mango' ]
// 6
Copier après la connexion

6. pop

pop() 方法用于删除数组的最后一个元素并返回删除的元素。

let sites = ['Google', 'Runoob', 'Taobao', 'Zhihu', 'Baidu']
let result = sites.pop()
console.log(sites)
console.log(result)
// [ 'Google', 'Runoob', 'Taobao', 'Zhihu' ]
// Baidu
Copier après la connexion

7. shift

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值

let fruits = ["Banana", "Orange", "Apple", "Mango"];
let result = fruits.shift()
console.log(fruits)
console.log(result)
// [ 'Orange', 'Apple', 'Mango' ]
// Banana
Copier après la connexion

8. splice

splice() 方法用于添加或删除数组中的元素,并返回删除的元素数组

// 参数 Values: index: 必需,规定从何处添加/删除元素
// howmany: 可选,规定应该删除多少元素 必须是数字,但可以是 "0"
// item1, ..., itemX 可选,要添加到数组的新元素
array.splice(index,howmany,item1,.....,itemX)
Copier après la connexion
let fruits = ["Banana", "Orange", "Apple", "Mango"]
let result = fruits.splice(1, 2, "Lemon", "Kiwi")
console.log(fruits)
console.log(result)
// [ 'Banana', 'Lemon', 'Kiwi', 'Mango' ]
// [ 'Orange', 'Apple' ]
Copier après la connexion

9. slice

slice() 方法可从已有的数组中返回选定的元素。也可提取字符串的某个部分,并以新的字符串返回被提取的部分。不会改变原数组。

// start: 可选,规定从何处开始选取 若为负值,表示从原数组中的倒数第几个元素开始提取
// end: 可选,规定从何处结束选取 如果没有指定该参数,那么切分的数组包含从start到数组结束的所有元素
array.slice(start, end)
Copier après la connexion
let fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"]
let result1 = fruits.slice(1, 3)
let result2 = fruits.slice(2)
console.log(fruits)
console.log(result1)
console.log(result2)
// [ 'Banana', 'Orange', 'Lemon', 'Apple', 'Mango' ]
// [ 'Orange', 'Lemon' ]
// [ 'Lemon', 'Apple', 'Mango' ]
Copier après la connexion

10. join

join() 方法可将所有数组元素结合为一个字符串。它的行为类似 toString(),但是您还可以规定分隔符

// separator: 可选,指定要使用的分隔符 如果省略该参数,则使用逗号作为分隔符
array.join(separator)
Copier après la connexion
let fruits = ["Banana", "Orange", "Apple", "Mango"];
let energy1 = fruits.join();
let energy2 = fruits.join('-');
console.log(energy1)
console.log(energy2)
// Banana,Orange,Apple,Mango
// Banana-Orange-Apple-Mango
Copier après la connexion

11. every

every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)。

array.every(function(currentValue,index,arr))
Copier après la connexion
let ages = [32, 33, 16, 40]
let nums = [32, 33, 19, 40]
function checkAdult(age) {
  return age >= 18
}
function checkNums(num) {
  return num >= 18
}
// 16不满足大于18,故结果false
let result1 = ages.every(checkAdult)
// 每一项都满足条件,故结果true
let result2 = nums.every(checkNums)
console.log(result1)
console.log(result2)
// false
// true
Copier après la connexion

12. filter

filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。不会改变原数组。

array.filter(function(currentValue,index,arr), thisValue)
Copier après la connexion
let ages = [32, 33, 16, 40];
function checkAdult(age) {
  return age >= 18;
}
let result = ages.filter(checkAdult)
console.log(result)
// [ 32, 33, 40 ]
Copier après la connexion

13. indexOf

indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。没有找到会返回-1

// searchvalue: 必需。规定需检索的字符串值。
// start: 可选的整数参数。规定在字符串中开始检索的位置。值:0~array.length-1
string.indexOf(searchvalue,start)
Copier après la connexion
let str = "Hello world, welcome to the universe.";
// 输出w所在的下标索引13(空格也算),没有找到会返回-1
let n = str.indexOf("welcome");
console.log(n)
console.log(str[n])
// 13
// w
Copier après la connexion

14. reduce

reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
Copier après la connexion
let numbers = [2, 3, 5, 6]
function getSum(total, num) {
  return total + num
}
let result = numbers.reduce(getSum, 0)
console.log(result)
// 16
Copier après la connexion

15. reverse

reverse() 方法用于颠倒数组中元素的顺序。会改变原数组,并返回改变顺序的数组。

let fruits = ["Banana", "Orange", "Apple", "Mango"]
let resut = fruits.reverse()
console.log(fruits)
console.log(resut)
// [ 'Mango', 'Apple', 'Orange', 'Banana' ]
// [ 'Mango', 'Apple', 'Orange', 'Banana' ]
Copier après la connexion

16. sort

sort() 方法用于对数组的元素进行排序。排序顺序可以是字母或数字,并按升序或降序。

// sortfunction: 可选。规定排序顺序。必须是函数。
array.sort(sortfunction)
Copier après la connexion
let fruits = ["Banana", "Orange", "Apple", "Mango"]
let ages = [9, 3, 4, 5, 7, 10]
// 升序
let agesFunAsc = function (ag1,ag2) {
  return ag1 - ag2
}
// 降序
let agesFunDes= function (ag1,ag2) {
  return -(ag1 - ag2)
}
fruits.sort()
ages.sort(agesFunAsc)
console.log(fruits)
console.log(ages)
ages.sort(agesFunDes)
console.log(ages)
// [ 'Apple', 'Banana', 'Mango', 'Orange' ]
// [ 3, 4, 5, 7, 9, 10 ]
// [ 10, 9, 7, 5, 4, 3 ]
Copier après la connexion

17. toString

toString() 方法用于把数字转换为字符串。

number.toString(radix)
Copier après la connexion
let num = 15
let n = num.toString()
// 也可以使用不同的进制把一个数字转换为字符串
// 2进制
let b = num.toString(2);
// 8进制
let c = num.toString(8);
// 16进制
let d = num.toString(16);
console.log(n)
console.log(b)
console.log(c)
console.log(d)
// 15
// 1111
// 17
// f
Copier après la connexion

18. at

at()

Déclarer un tableau

Il existe trois méthodes de déclaration différentes

1 Méthode conventionnelle

array.at(index)
Copier après la connexion

2. Manière concise

let str = 'helso word'
let item1 = str.at(2)
let item2 = str.at(-1)
console.log(item1)
console.log(item2)
// l
// d
Copier après la connexion

3. Littéral
array.find(function(currentValue, index, arr),thisValue)
Copier après la connexion

Méthode d'objet tableau

< h3 data-id="heading-5">1. La méthode forEach

forEach() est utilisée pour appeler chaque élément du tableau et transmettre l'élément à la fonction de rappel. Il n'y a pas de valeur de retour et cela équivaut essentiellement à une boucle for qui exécute la fonction function sur chaque élément. Le tableau d'origine ne sera pas modifié.

let ages = [3, 10, 18, 20];
function checkAdult(age) {
  return age >= 18;
}
let value = ages.find(checkAdult)
console.log(value)
// 18
Copier après la connexion
array.some(function(currentValue,index,arr),thisValue)
Copier après la connexion

2. map

traite chaque élément du tableau via la fonction spécifiée et renvoie le tableau traité. La méthode

🎜🎜map() renvoie un nouveau tableau et les éléments du tableau sont les valeurs des éléments du tableau d'origine après avoir appelé la fonction. La méthode traite les éléments séquentiellement dans l’ordre d’origine des éléments du tableau. Le tableau d'origine ne sera pas modifié. 🎜
let ages = [3, 10, 19, 20];
function checkAdult(age) {
  return age > 18;
}
let result = ages.some(checkAdult)
console.log(result)
// true
Copier après la connexion
rrreee

3. concat🎜🎜🎜La méthode concat() en JavaScript est utilisée pour concaténer deux tableaux ou plus et renvoyer le résultat. 🎜🎜rrreeerrreee

4. push🎜🎜🎜La méthode push() dans un tableau Javascript est utilisée pour ajouter un ou plusieurs éléments à la fin du tableau. , et renvoie la nouvelle longueur. 🎜🎜rrreee

5. La méthode unshift🎜🎜🎜unshift() ajoute un ou plusieurs éléments au début du tableau et renvoie la nouvelle longueur. 🎜🎜rrreee

6. La méthode pop🎜🎜🎜pop() est utilisée pour supprimer le dernier élément du tableau et renvoyer l'élément supprimé. 🎜🎜rrreee

7. La méthode shift🎜🎜🎜shift() est utilisée pour supprimer le premier élément du tableau et renvoyer la valeur du premier élément🎜🎜rrreee8. La méthode splice🎜🎜🎜splice() est utilisée pour ajouter ou supprimer des éléments dans le tableau et renvoyer le tableau d'éléments supprimés🎜🎜rrreeerrreee

9. . La méthode slice🎜🎜🎜slice() renvoie les éléments sélectionnés dans un tableau existant. Vous pouvez également extraire une partie d'une chaîne et renvoyer la partie extraite sous forme de nouvelle chaîne. Le tableau d'origine ne sera pas modifié. 🎜🎜rrreeerrreee

10. La méthode join🎜🎜🎜join() peut combiner tous les éléments du tableau en une chaîne. Il se comporte comme toString(), mais vous pouvez également spécifier le délimiteur 🎜🎜rrreeerrreee

11 La méthode every🎜🎜🎜every() est utilisée pour détecter si tous les éléments du tableau. correspondre à la condition spécifiée (fournie via la fonction). 🎜🎜rrreeerrreee

12. La méthode filter🎜🎜🎜filter() crée un nouveau tableau et les éléments du nouveau tableau sont vérifiés pour tous les éléments du tableau spécifié qui remplissent les conditions. . Le tableau d'origine ne sera pas modifié. 🎜🎜rrreeerrreee

13. La méthode indexOf🎜🎜🎜indexOf() peut renvoyer la position où une valeur de chaîne spécifiée apparaît pour la première fois dans la chaîne. S'il n'est pas trouvé, -1 sera renvoyé🎜🎜rrreeerrreee

14. La méthode réduire🎜🎜🎜reduce() reçoit une fonction comme accumulateur, chaque valeur du tableau (de gauche à droite). à droite) Commence la réduction et finit par calculer une valeur. 🎜🎜rrreeerrreee

15. La méthode reverse🎜🎜🎜reverse() est utilisée pour inverser l'ordre des éléments dans le tableau. Changera le tableau d'origine et renverra le tableau dans l'ordre modifié. 🎜🎜rrreee

16. La méthode sort🎜🎜🎜sort() est utilisée pour trier les éléments du tableau. L'ordre de tri peut être alphabétique ou numérique, ainsi que par ordre croissant ou décroissant. 🎜🎜rrreeerrreee

17. La méthode toString🎜🎜🎜toString() est utilisée pour convertir des nombres en chaînes. 🎜🎜rrreeerrreee

18. La méthode at🎜🎜at() accepte une valeur entière et renvoie la valeur de l'index at, à la fois des entiers positifs et négatifs. sont acceptables. Un entier négatif signifie un décompte à partir du dernier élément du tableau. 🎜rrreeerrreee🎜19. La méthode find🎜🎜🎜find() renvoie la valeur du premier élément du tableau qui réussit le test (jugé dans la fonction). 🎜🎜rrreeerrreee🎜20. La méthode some🎜🎜🎜some() est utilisée pour détecter si les éléments du tableau remplissent les conditions spécifiées (fournies par la fonction). 🎜🎜rrreeerrree🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:juejin.im
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal