この記事では、JavaScript 配列の一般的な API メソッドとトラバーサル メソッドの概要を (例とともに) 紹介します。これには一定の参考価値があります。必要な友人は参照できます。お役に立てば幸いです。
Array(配列)
ES5 *
map
構文: [].map(function(item,index,array) {return xxx} )
関数: 配列を走査し、コールバック戻り値で構成される新しい配列を返します。元の配列は変更されず、空の配列は検出されません。
forEach
構文: [].forEach( function(item, Index, array) {})
関数: ブレークできません。元の配列を変更せずに停止するには、try/catch で throw new Error を使用できます
filter
構文: [].filter(function(item,index,array) {})
関数:filter、フィルターされた配列を返します。元の配列は変更せず、空の配列は検出しません配列
例:
const data = [-8, 9, 5, 3]; const res = data.filter(function(item) { if (item > 3) { return item } }); console.log(res); // [9, 5]
文法: [].some(function(item,index,array) {})
関数: 1 つの項目が true を返した場合、全体が true になります。元の配列は変更されません
構文: [].every(function( item、index、array) {})
関数: true を返すには、すべての条件が満たされる必要があります。1 つの項目が false を返した場合、全体が false になります。元の配列は変更されません
構文: [].join(str)
関数: コネクタ str を指定して、文字列に連結された配列を返します。元の配列を変更します
[].push(item) / [].pop(item)関数:配列の末尾でpushプッシュとpopポップを実行し、変更された配列の長さ/ポップアップ項目を返します。
元の配列を変更します
[].unshift(item) / [].shift(item) 機能: unshift をプッシュして配列の先頭にポップアップ shift し、変更された配列の長さを返します/ポップアウト項目、
元の配列を変更します
[].sort(fn) [].reverse( )関数: ルールに従って並べ替えおよび反転、
元の配列を変更
[].splice(start 、number、value1、value2...)関数:
start から始まる、削除された要素で構成される配列を返します。
number の値を削除し、## を挿入します。 #valueN
パラメータ リストを配列に追加します。元の配列を変更します
concat
関数: n (n >= 2) 個の配列を接続し、配列接続後に配列のコピーを返します。浅いコピーです。
元の配列は変更しませんslice
関数: 切り詰められた新しい配列を返します。
元の配列は変更しません #indexOf / lastIndexOf(value, fromIndex)
関数: 配列項目の検索
indexOf starting
fromIndex
(デフォルトは 0) から後方検索
valuelastIndexOf は
fromIndex
から開始 (デフォルトは -1) 前方検索
value値に対応する添字を返します
reduce /reduceRight
関数: で実行します。ペア、prev は最後の簡略化された関数の戻り値、cur は現在の値 (2 番目の項目から開始) コールバック関数のパラメーター: 以前の値 (previousValue)、現在の値 ( currentValue)、インデックス値 ( currentIndex) と配列自体 (array)
initialValue オプションの初期値 (コールバック関数が最初に呼び出されたときにpreviousValue に渡される値として)。つまり、累算などの操作の開始値 (追加ボーナス) を渡します。
reduceRight は配列の末尾から開始します。
関数: パラメータ値が Array かどうかを判断するために使用されますES6
findIndex *
関数: 条件を満たす最初の配列要素の インデックスを返します
from *
関数: 配列のようなオブジェクトとトラバース可能な (反復可能)
オブジェクトを実際の配列に変換します
一般的に使用される: <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">const set = new Set(3, 8, 9, 0)
Array.from(set)</pre><div class="contentsignin">ログイン後にコピー</div></div>
entries *
関数: 反復子を返す: キーと値のペアを返す[注意]
Object.entries(obj)
および [].entries()
は、
//数组 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 のメソッドです#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视频教程】
以上がJavaScript 配列の一般的な API メソッドとトラバーサル メソッドの概要 (例付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。