陣列中常用的方法總結

2021-09-17 21:32:24 字數 4089 閱讀 8628

低階

1、array.from,將乙個類似陣列的物件中建立乙個陣列例項;

第乙個類陣列,第二個是函式,類陣列的每一項都會執行,第三個引數座位mapfn的this

array.from('foo');     //['f','o','o'];

var o = ;

array.from([1,2,3,4],function(item),o) //2,3,4,5

2、array.isarray()判斷傳進的值是否是array

注意:array.prototype也是乙個陣列

3、array.of()將引數當做陣列項,並返回乙個新陣列

注意:和array()的區別是,array.of()是將引數作為陣列項,而array是將引數當做陣列的長度。

array.of(1,2,3); // [1,2,3]

array.of(9); //[9]

array.of(7); //[7]

array(7) // [ , , , , , , ]

4、copywithin()賦值陣列的一部分

引數:arr.copywithin(target[,start[,end]]),複製是包含start,不包含end

返回值:複製後的陣列,改變了原陣列(不會改變陣列的length)

var arr = [0,1,2,3,4,5,6,7,8,9];

console.log(arr.copywithin(3,5,9)); //[0,1,2,5,6,7,8,7,8,9]

console.log(arr); //[0,1,2,5,6,7,8,7,8,9]

var arr = [0,1,2,3,4,5,6,7,8,9];

console.log(arr.copywithin(1,6)); //[0,6,7,8,9,5,6,7,8,9]

var arr = [0,1,2,3,4,5,6,7,8,9];

console.log(arr.copywithin(5)); //[0,1,2,3,4,0,1,2,3,4]

5、every()測試陣列中所有的元素是否都通過了指定函式的測試

function themax(element, index, array)

function yuygg(element)

var passed = [12,3,4,5,53,54,22,45,2];

var o =

console.log(passed.every(themax)); //false

console.log(passed.every(yuygg,o)); //true

6、fill()用乙個固定的值填充乙個陣列從起始到終止索引內的全部元素(不包括終止元素)

var arr1 = [0,1,2,3,4,5,6,7,8];

console.log(arr1.fill('a', 2,7)); //[0,1,'a','a','a','a','a',7,8]

var arr3 = [0,1,2,3,4,5,6,7,8];

console.log(arr3.fill('b')); //['b','b','b','b','b','b','b','b','b'];

7、filter()建立乙個新陣列,包含了通過測試的所有元素

var arr = [1,2,3,4,5,6];

function nfewr(element)

console.log(arr.find(nfewr)); //2

9、findindex()和find()有一些類似,該函式返回的是符合條件的索引

10、flat()深度遍歷陣列,並將所有元素與遍歷道德子陣列中的元素合併為乙個新元素返回

var m = [1,2,[3,4,[5,6,7]]];

console.log(m.flat()); //[1,2,3,4,[5,6,7]];

console.log(m.flat(3)); // [1,2,3,4,5,6,7]

11、flatmap()將結果壓縮成乙個新的陣列

var m = [1,2,3,4];

function fun1(currentvalue)

console.log(m.flatmap(fun1)); //[[1],[2],[3],[4]]

var arr2 = ["你好呀",""","一起出去玩吧!"];

console.log(arr2.flatmap((x)=>x.split(""))); //["你", "好", "呀", "一", "起", "出", "去", "玩", "吧", "!"]

12、foreach()對陣列中的每個元素執行一次提供的函式

var arr = [1,2,3,4];

function fun2(item)

console.log(arr.foreach(fun2));

13、includes()判斷陣列是否包含乙個指定的值,如果存在,返回true,反之false

var arr = [1,2,3,4,5];

console.log(arr.includes(8)); //false

console.log(arr.includes(1,3)); //false

高階

1、concat用於連線倆個或倆個以上陣列,並保留引用

var num1 = [1,2,3];

var num2 = [4,5,6];

var num3 = num1.concat(num2); //[1,2,3,4,5,6]

num1.push(5);

console.log(num4); // [1,2,3,4,5,6] 合併基本型別不會改變num3

var arr1 = [[1,2,3],4,5];

var arr2 = [5,6];

var arr3 = arr1.concat(arr2); // [[1,2,3],4,5,5,6];

arr1[0].push(9); //arr1[[1,2,3,9],4,5]

//由於arr1[0]是應用型別,所以當arr1[0]改變時,就會改變arr3

console.log(arr3); // [[1,2,3,9],4,5,5,6];

2、entries返回乙個新的array iterator物件

var m = ['a','b','c','d'];

var it = m.entries();

console.log(it); //array iterator {}

//此時就需要使用next()

console.log(it.next()); /*

使用一次next就會一次向後遍歷一次,done表示迭代器是否完成

參考:mdn

Dart 中常用的陣列操作方法總結

作者 三也視界 這位博主寫的很詳細到位,留下傳送門,感謝 dart 中常用的陣列操作方法總結 首先,我們準備兩組資料,以方便後面使用 list students list numbers 2 8,5 1,7 3 本文中用到的 students 及 numbers 均指的是這裡已經定義好的,後面不再重...

陣列 array中常用的方法

stringbuilder 效能不安全,但效率高,用來儲存字元 stringbuffer 效能安全,呼叫時需要等待,但是效率低 delete a,b 刪除內容包頭不包尾 reverse 把陣列內容倒一遍 陣列初始化的三種方式 靜態初始化 動態初始化 預設初始化 1 靜態初始化 int a 靜態初始化...

js中常用陣列的方法

一 陣列常用方法 1 push 向陣列中新增資料 語法 陣列.push 要新增的資料 加粗樣式 var arr 你好 var res arr.push 世界 console.log arr 你好 世界 console.log res 2直接改變原陣列 新增的資料是放在陣列的最後一位 返回值 新增過後...