この記事では、JavaScript データ構造の関連操作について説明します (例を示します)。必要な方は参考にしていただければ幸いです。
データ構造の分類
データ構造とは、相互に 1 つ以上の関係を持つデータ要素のコレクション、およびデータ要素間の関係を指します。関係性のコレクション。
一般的に使用されるデータ構造には、図に示すように、配列、スタック、リンク リスト、キュー、ツリー、グラフ、ヒープ、ハッシュ テーブルなどが含まれます。
ヒント: データは通常、同じデータ型の一連の値を格納しますが、JavaScript では異なる型の値を配列に保存できますが、これは通常は必要ありません。 1.配列の作成
let daysOfWeek = new Array(); let daysOfWeek = new Array(7); let daysOfWeek = new Array('1', '2', '3', '4', '5', '6', '7');
2.要素の追加
// 初始化nums数组 let nums = [0,1,2,3,4,5,6]; // 指定位置添加 nums[nums.length] = 7; // 使用push(),把元素添加到数组末尾 nums.push(8);// 0...8 nums.push(9, 10);// 0...10 // 使用unshift,把元素添加到数组首位 nums.unshift(-1);// -1...10 nums.unshift(-3,-2);// -3...10
// pop(),删除最后一个 nums.pop();//-3...9 // shift(),删除第一个 nums.shift();//-2...9
// splice()方法 nums.splice(2, 3);// 删除 index=2 开始的后的3个数 -2,-1,3...9 nums.splice(2, 0, 0, 1, 2);// 从index=2开始插入0,1,2 -2...9
concat() // 连接2个或多个数组,并返回结果 every() // 对数组中的每一项运行给定函数,如果该函数对每一项都返回true,则返回true filter() // 对数组中的每一项运行给定函数,返回该函数能返回true的项作为新数组 forEach() // 对数组中的每一项运行给定函数,没有返回值 join() // 按传入的字符连接成一个字符串 indexOf() // 从前往后遍历,返回第一个与传入参数相等的索引值,没找到返回-1 lastIndexOf() // 从后往前遍历,返回第一个与传入参数相等的索引值 map() // 对数组中的每一项运行给定函数,返回每次函数调用的结果组成新的数组 reverse() // 颠倒数组中元素的顺序 slice() // 传入索引值,将数组对应索引值范围内的元素作为新数组返回 some() // 对数组中的每一项运行给定函数,如果某一项返回true,则返回true sort() // 按照字母顺序排序,支持传入指定排序方法的函数作为参数 toString() // 将数组作为字符串返回 valueOf() // 和toString类似,将数组作为字符串返回
@@iterator // 返回一个包含数组键值对的迭代器对象,可通过同步调用得到数组元素的键值对 copyWithin() // 复制数组中一系列元素,到该数组指定的起始位置 entries() // 返回包含数组所有键值对的@@iterator includes() // 数组中存在某个元素则返回true,否则返回false(es7新增) find() // 根据回调函数给定的条件从数组中查找元素,如果找到则返回该元素 findIndex() // 根据回调函数给定的条件从数组中查找元素,如果能找到就返回该元素在数组中的索引 fill() // 用传入参数填充数组 from() // 根据已有数组创建一个新数组 keys() // 返回包含数组所有索引的@@iterator of() // 根据传入的参数创建一个新数组 values() // 返回包含数组中所有值的@@iterator
長所:
(1) クエリインデックスによる 要素の速度が速い(2) インデックスに従って配列を走査するのに便利です
欠点:
(1) 配列のサイズが固定された後は、配列のサイズを変更することはできませんExpanded
(2) 配列には 1 つのタイプのデータのみを格納できます。
(3) 追加および削除操作は、他の要素を移動する必要があるため時間がかかります。
適用可能なシナリオ:
頻繁なクエリ、小さなストレージ容量、および少数の追加と削除。
以上がJavaScript データ構造の配列に関連する操作の概要 (例付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。