Cet article vous présente un résumé des méthodes API et des méthodes de traversée courantes pour les tableaux JavaScript (avec des exemples). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
Array (array)
ES5 *
map
Syntaxe : [].map(function(item, index, array) {return xxx} )
Fonction : Parcourez le tableau et renvoyez un nouveau tableau composé de la valeur de retour de rappel. Le tableau d'origine ne sera pas modifié et le tableau vide ne sera pas détecté
forEach
. Syntaxe : [].forEach( function(item, index, array) {})
Fonction : Impossible de casser, vous pouvez utiliser throw new Error dans try/catch pour arrêter sans modifier le tableau d'origine
filter
Syntaxe : [].filter(function(item, index, array) {})
Fonction : filtre, renvoie le tableau filtré, ne modifie pas le tableau d'origine et ne détectera pas les tableaux vides
par exemple :
const data = [-8, 9, 5, 3]; const res = data.filter(function(item) { if (item > 3) { return item } }); console.log(res); // [9, 5]
Syntaxe : [].some(function(item, index, array) {})
Fonction : Si un élément renvoie vrai, alors le tout est vrai, 不改变原数组
Syntaxe : [].every(function(item, index, array) {})
Fonction : Toutes les conditions doivent être remplies pour renvoyer vrai. Si un élément renvoie faux, l'ensemble est faux. >join不改变原数组
[].join(str)
push / pop不改变原数组
[].push(item) / [].pop(item)
unshift/shift改变原数组
[].unshift(item) / [].shift(item)
sort(fn) / reverse改变原数组
[].sort(fn) [].reverse()
splice改变原数组
valeurs à partir de [].splice(start, number, value1, value2...)
et insérez
Liste de paramètres dans le tableau, start
number
valueN
concat改变原数组
[].concat([])
slice不改变原数组
[].slice(start, end)
indexOf / lastIndexOf(value, fromIndex)不改变原数组
Rechercher un élément du tableau[].indexOf(value[, fromIndex])
indexOf Search en arrière à partir de
(la valeur par défaut est 0)
lastIndexOf recherche en avant à partir de fromIndex
(la valeur par défaut est -1) value
renvoie l'indice correspondant à la valeur fromIndex
value
réduire / réduireRight
Paramètres de la fonction de rappel : valeur précédente (previousValue), valeur actuelle (currentValue), index La valeur (currentIndex) et le tableau lui-même (array)reduce / reduceRight(callback[, initialValue])
initialValue valeur initiale facultative, comme valeur transmise à previousValue lorsque la fonction de rappel est appelée la première fois. Autrement dit, transmettez la valeur de départ (bonus supplémentaire) pour les opérations telles que l'accumulation
reduceRight commence à partir de la fin du tableau
Array.isArray(value)
ES6
findIndex *item
[].findIndex(fn)
du premier élément de tableau qui remplit les conditions from *索引
traversables en tableaux réels [].fill(value[, start, end])
Couramment utilisé : (iterable)
entrées *
const set = new Set(3, 8, 9, 0) Array.from(set)
[].entries()
[Note] La méthode
renvoie un attribut énumérable de l'objet donné lui-même Un tableau de clés -paires de valeurs, disposées dans le même ordre que celui renvoyé lors de l'utilisation d'une boucle for...in pour parcourir l'objet (la différence est que la boucle for-in énumère également les propriétés dans la chaîne de prototypes) [MDN]
are La méthode Object.entries(obj)
keys/values sur Array.prototype est similaire à [].entries()
keys *
//数组 const arr = ['a', 'b', 'c']; for(let v of arr.entries()) { console.log(v) } // [0, 'a'] [1, 'b'] [2, 'c'] //Set const arr1 = new Set(['a', 'b', 'c']); for(let v of arr1.entries()) { console.log(v) } // ['a', 'a'] ['b', 'b'] ['c', 'c'] //Map const arr2 = new Map(); arr2.set('a', 'a'); arr2.set('b', 'b'); for(let v of arr2.entries()) { console.log(v) } // ['a', 'a'] ['b', 'b']
[].keys()
values
语法:[].includes(val[, fromIndex])
功能:用于从fromIndex
判断数组中是否包含val,可替代ES5中的 indexOf
语法:[].copyWithin(target[, start[, end]])
功能:浅复制数组的一部分(start~end)到同一数组中的另目标位置target,返回改变后的数组,而不修改其大小;start默认为0, end默认为length-1; 改变原数组
语法:Array.of()
功能:创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型
Array构造函数 & Array.of() 区别
实例说明
Array.of(7); // [7] Array.of(1, 2, 3); // [1, 2, 3] Array(7); // [ , , , , , , ] Array(1, 2, 3); // [1, 2, 3]
语法:[].fill(value[, start, end])
功能:用指定的元素填充数组,可用于初始化数组,返回改变后的数组,改变原数组
填充值(value),填充起始位置(start,默认为0),填充结束位置(end,默认为数组length)。
map/forEach/some/every/filter 见上
遍历所有可枚举属性,常用于遍历对象Object
遍历所有可迭代iterable的对象
循环遍历对象自身的和继承的可枚举属性(不含Symbol属性)【可枚举 - Symbol】
返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含Symbol属性)【自身可枚举 - Symbol】
返回一个数组,包含对象自身的所有属性(不含Symbol属性,但是包括不可枚举属性)【自身 - Symbol】
返回一个数组,包含对象自身的所有Symbol属性【自身的Symbol】
返回一个数组,包含对象自身的所有属性,不管是属性名是Symbol或字符串,也不管是否可枚举 【自身所有】
【相关推荐:JavaScript视频教程】
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!