摘要:例如會刪除當前數組位置的項,然后再從位置開始插入字符串。對數組中的每一項運行給定函數,返回該函數會返回的項組成的數組。則從數組的最后一項開始,向前遍歷到第一項。
1、隊尾插入push
var colors = ["red","green"]; colors.push("black"): console.log(colors); //["red","green","black"]
2、隊尾刪除并返回刪除的最后一項pop
var colors = ["red","green","black"]; var item = colors.pop(); console.log(item); //"black"
3、隊首插入unshift()
var colors = ["red","green"]; colors.unshift("black"); var item = colors.pop(); console.log(item); //"black"
4、隊首刪除shift()
var colors = ["red","green","black"]; colors.shift(); console.log(colors); //["green","black"]
5、數組一添加數組二concat()
var colors = ["red","green","black"]; var colors2 = colors.concat("yellow",["blue","brown"]); console.log(colors); //["red","green","black"] console.log(colors2); //["red","green","black","yellow","blue","brown"]
6、數組的截取slice()
只傳一個參數:從數組這個參數的下標開始截取一直到數組結束。
var colors = ["red","green","black"]; colors.slice(1); //["green","black"] console.log(colors); //["red","green","black"]
傳兩個參數:第一個是截取開始的位置,第二個是截取結束的位置
var colors = ["red","green","black","yellow","blue","brown"]; colors.slice(1,3)//從位置1開始,到位置2結束["green","black"];
7、數組的splice()方法
有三種用法:
刪除:可以刪除任意數量的項,只需指定兩個參數:第一個參數為刪除開始的位置,第二個參數為刪除項數。
插入:可以向指定位置插入任意數量的項,只需提供3個參數:起始位置、0(要刪除的項數)和要插入的項。例如:splice(2,0,"red","green"),會從當前數組的位置2開始插入字符串"red"和"green"。
替換: 可以向指定位置插入任意數量的項,且同事刪除任意數量的項,只需提供3個參數:起始位置、要刪除的項數和要插入的任意數量的項。插入的項數不必與刪除項數相等。例如:splice (2,1,"red","green") 會刪除當前數組位置2的項,然后再從位置2開始插入字符串。
var colors = ["red","green","black"]; var removed = colors.splice(0,1); console.log(colors); //["green","black"] console.log(removed); //["red"] removed = colors.splice(1,0,"yellow","orange"); console.log(colors); //["green","yellow","orange","black"] console.log(removed); //[] removed = colors.splice(1,1,"red","purple"); console.log(colors); //["green","red","purple","orange","black"] console.log(removed); //["yellow"]
8、位置方法indexOf()和lastIndexOf()
indexOf()和lastIndexOf()都接收兩個參數,第一個參數是要查找的項,第二個(可選)查找開始的位置,indexOf()是從數組頭開始查,lastIndexOf()是從數組尾開始查找。
var numbers = [1,2,3,4,5,4,3,2,1]; console.log(numbers.indexOf(4)); //3 console.log(numbers.lastIndexOf(4)); //5 console.log(numbers.indexOf(4,4)); //5 var person = {name: "vivi"}; var people = [{name: "vivi"}]; var morePeople = [person]; console.log(people.indexOf(person)); //-1 console.log(morePeople.indexOf(person)); //0
9、查找find()方法
查找符合條件的第一項
var inventory = [ {name: "apples", quantity: 2}, {name: "bananas", quantity: 0}, {name: "cherries", quantity: 5} ]; const inventorItem = inventory.find((item) => item.name === "apples"); console.log(inventorItem); //{name: "apples", quantity: 2}
10、迭代方法
傳入這些方法中的函數會接收三個參數:數組項的值、該項在數組中的位置和數組對象本身。
every(): 對數組中的每一項運行給定函數,如果該函數對每一項都返回true,則返回true。
filter(): 對數組中的每一項運行給定函數,返回該函數會返回true的項組成的數組。
forEach(): 對數組中的每一項運行給定函數,這個方法沒有返回值。
map(): 對數組中的每一項運行給定函數,返回每次函數調用的結果組成的數組。
some(): 對數組中的每一項運行給定函數,如果該函數對任一項返回true,則返回true。
var numbers = [1,2,3,4,5,4,3,2,1]; var everyResult = numbers.every((item, index, array) => { return item > 2; }); console.log(everyResult); //false var someResult = numbers.some((item, index, array) => { return item > 2; }); console.log(someResult); //true
var numbers = [1,2,3,4,5,4,3,2,1]; var filterResult = numbers.filter((item, index, array) => { return item > 2; }); console.log(filterResult); //[3,4,5,4,3]
var numbers = [1,2,3,4,5,4,3,2,1]; var mapResult = numbers.map((item, index, array) => { return item * 2; }); console.log(mapResult); //[2,4,6,8,10,8,6,4,2]
var numbers = [1,2,3,4,5,4,3,2,1]; numbers.forEach((item, index, array) => { //執行某些操作 });
11、歸并方法reduce()和reduceRight()
這兩個方法都會迭代數組的所有項,然后構建一個最終返回的值。 reduce()方法從數組的第一項開始,逐個遍歷到最后。 reduceRight()則從數組的最后一項開始,向前遍歷到第一項。
var values = [1,2,3,4,5]; var sum = values.reduce((prev, cur, index, array) => { return prev + cur; }); console.log(sum); //15
var values = [1,2,3,4,5]; var sum = values.reduceRight((prev, cur, index, array) => { return prev + cur; }); console.log(sum); //15
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/96304.html
摘要:在為的位置,刪除個元素,插入刪了為的元素,替換為刪了為的元素數組的增刪改都可以用完成返回從原數組中指定開始下標到結束下標之間的項組成的新數組該方法不會改變原始數組。不傳值表示克隆了除了正常用法,經常用來將對象轉換為。 js 中數組的常用方法總結 arr.fill(a);//所有子元素 都改為 a; [{a: 1},{b: 2}, ...Array(8).fill({}, 0)] //...
摘要:返回數組內容的字符串表示形式將數組中每個元素轉為字符串,并用逗號連接。拍照連接符將數組中每個元素轉為字符串,用自定義的連接符連接每個元素需要用變量借助。 關于數組篇的記錄,純自己總結,會持續更新~ 原生js方法 1:創建數組的幾種方法: var arr = []; var arr = new Array(); var arr = [1,2]; var arr = new Arr...
摘要:第一種常規法最直觀的思路創建一個新數組如果新數組中已經包含了當前的第個元素,那么跳過否則把當前項到新數組中輸出這種方法用到了方法。特殊情況當數組中既有數字又有字符串的時候,如此時希望和都保留,那么上述的方法無法達到要求。 第一種:常規法(最直觀的思路) function unique(arr){ var n = []; //創建一個新數組 for(var i = 0; ...
摘要:注方法可以返回某個指定字符串在字符串中首次出現的位置比如首次出現的位置是數組中的第一個,即下標為遍歷數組使用標識符去重聲明一個變量標識排序后遍歷過濾數組思路先給數組排序,這樣相同的項總是相鄰。 假設我們有數組arr,并且聲明新數組hash用來存放去重后的元素: var arr = [23,44,5,2,23,5,1,7,8,7]; //包含重復元素 var hash= [];...
閱讀 3069·2021-11-24 11:14
閱讀 3480·2021-11-22 15:22
閱讀 3200·2021-09-27 13:36
閱讀 712·2021-08-31 14:29
閱讀 1328·2019-08-30 15:55
閱讀 1752·2019-08-29 17:29
閱讀 1143·2019-08-29 16:24
閱讀 2400·2019-08-26 13:48