低階
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直接改變原陣列 新增的資料是放在陣列的最後一位 返回值 新增過後...