日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JavaScript常用数组方法

發布時間:2025/3/21 javascript 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaScript常用数组方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JavaScript數組方法有以下這些:

forEach() 方法對數組的每一個元素執行一次提供的函數。

map() 方法創建一個新數組,其結果是該數組都執行一次函數,原函數保持不變。

filter() 方法使指定函數測試數組的每一個元素,并放回一個通過元素的新數組。

some() 方法測試該數組有元素通過了指定函數的測試,如果有返回true,否則,返回false。

every() 方法測試該數組是否全部通過指定函數測試,全部通過返回true,否則,返回false。

Array.of() 方法創建一個具有可變數量參數的新數組實例,而不考慮參數的數量或類型。

Array.isArray() 方法適用于確定傳遞的值是否為Array

slice() 方法將數組的一部分淺拷貝,返回到從開始到結束(不包括結束)選擇的新數組對象。原始數組不會被修改。

splice() 方法通過刪除現有元素或添加新元素來更改數組的內容,第一個參數索引位置,第二個參數刪除的個數,第三個參數添加新內容

?

find() 方法返回數組中滿足提供的測試函數的第一個元素的值。

語法: arr.find(callback[, thisArg])

?

findIndex()方法返回數組中滿足提供的測試函數的第一個元素的索引。否則返回-1。

語法:?arr.findIndex(callback[, thisArg])

?

indexOf()方法返回在數組中可以找到給定元素的第一個索引,如果不存在,則返回-1。

語法: arr.indexOf(searchElement)

????????? ? arr.indexOf(searchElement[, fromIndex = 0])

?

lastIndexOf() 方法返回指定元素(也即有效的 JavaScript 值或變量)在數組中的最后一個的索引,如果不存在則返回 -1。從數組的后面向前查找,從 fromIndex 處開始。

語法: arr.lastIndexOf(searchElement[, fromIndex = arr.length - 1])

?

includes() 方法用來判斷當前數組是否包含某指定的值,如果是,則返回 true,否則返回 false。

語法: arr.includes(searchElement)

?

????????????arr.includes(searchElement, fromIndex)

?

?

?

?

forEach 遍歷數組

1 2 3 4 5 var?arr?=?["a",?"b",?"c"]; arr.forEach(function(element,index)?{ ????console.log(element,index);?????? });

?

map 返回新數組,為當前元素加字符串m

1 2 3 4 5 6 7 8 9 10 11 12 13 14 var?arr?=?["a",?"b",?"c"]; arr.map(function(element,index)?{ ????return?element?+=?"m"; }); //?將給定數組的元素轉成整數 ["1",?"2",?"3"].map(parseInt);?????????//?[1,?NaN,?NaN] //?等價于 ["1",?"2",?"3"].map(function(value,index,array){ ????return?parseInt(value,index); }); parseInt(3,1);?????????????????????????//?NaN???parseInt(string,?radix)?函數將給定的字符串以指定基數解析成為整數。
1 var arr = ["郭靖","黃蓉","洪七公","黃藥師","歐陽鋒","楊康","穆念慈"]; 2 3 function arrayToJson(arr){ 4 var narr = null, 5 json=null; 6 7 narr = arr.map(function(currentValue,index){ 8 9 return "\""+index+"\":\""+currentValue+"\"";10 11 }); 12 13 json = "{"+narr.join(",")+"}"; 14 return JSON.parse(json); 15 } //{0: "郭靖", 1: "黃蓉", 2: "洪七公", 3: "黃藥師", 4: "歐陽鋒", 5: "楊康", 6: "穆念慈"}

?

?

?

filter 返回大于10的元素

1 2 3 4 5 6 7 //?12,?130,?44 var?arr?=?[12,?5,?8,?130,?44]; arr.filter(function(value){ ????return?value>10 }); //?等價于 arr.filter((value)=>value>10);

?

some 判斷當前數組有元素大于10的元素

1 2 3 4 var?arr?=?[12,?5,?8,?130,?44]; arr.some(function(value){??????????????????//?true ????return?value>10 });

?

every 判斷當前數組所有元素是否都大于10

1 2 3 4 var?arr?=?[12,?5,?8,?130,?44]; arr.every(function(value){?????????????????//?false ????return?value>10 });

?

創建數組

Array.of() 方法創建一個具有可變數量參數的新數組實例,而不考慮參數的數量或類型。

1 2 3 4 5 6 7 8 9 Array.of(3);????????????????????//?[7] Array(3);???????????????????????//?Array(3)?創建一個包含?3?個?undefined?元素的數組 if(!Array.of){ ????Array.of?=?function(){ ????????return?Array.prototype.slice.call(arguments); ????} }

?

判斷是否數組

Array.isArray() 方法適用于確定傳遞的值是否為Array

1 2 3 4 5 6 7 8 9 10 11 12 13 Array.isArray([]);??????????????????????//?true Array.isArray(new?Array());?????????????//?true Array.isArray(Array.prototype);?????????//?true Array.isArray(Array.of(undefined));?????//?true Array.isArray(null);????????????????????//?false Array.isArray(undefined);???????????????//?false if(!Array.isArray){ ????Array.isArray?=?function(){??? ????????return?Object.prototype.toString.call(arguments)?===?"[object?Array]"; ????} }

?

slice() 方法將數組的一部分淺拷貝,返回到從開始到結束(不包括結束)選擇的新數組對象。原始數組不會被修改。

1 2 3 4 5 var?arr?=?["zero",?"one",?"two",?"three"]; var?sliced?=?arr.slice(1,3); console.log(arr);????????????????//??["zero",?"one",?"two",?"three"] console.log(sliced);?????????????//??["one",?"two"]

?

splice() 方法通過刪除現有元素或添加新元素來更改數組的內容,第一個參數索引位置,第二個參數刪除的個數,第三個參數添加新內容

1 2 3 4 5 6 7 8 9 var?arr?=?["aaa","bbb","ccc"]; //?在索引1的位置添加一個新元素ddd arr.splice(1,0,"ddd");????????//?["aaa",?"ddd",?"bbb",?"ccc"] //?在索引2的位置刪除一個元素 arr.splice(2,1);??????????????//?["aaa",?"ddd",?"ccc"] //?在索引1的位置刪除一個元素并添加兩個元素 arr.splice(1,1,"eee","fff");??//?["aaa",?"eee",?"fff",?"ccc"]

?

?

例一、find()方法 查找數組中第一個大于等于15的元素

1 2 3 4 var?num?=?[10,3,5,15,100,1].find(function(elem,?index){???? ????return?elem>=15; }); console.log(num)?????//?15

?

例二、findIndex() 查找數組中第一個大于等于15的元素的位置(索引)

1 2 3 4 var?num?=?[10,3,5,15,100,1].findIndex(function(elem,?index){????//?15 ????return?elem>=15; }); console.log(num)?????//?3

?

例三、indexOf () 查找5所在的位置,默認索引位置從零開始

1 2 3 [0,1,2,3,4,5,6].indexOf(5);????//?5????從索引0的位置往后查找 [0,1,2,3,4,5,6].indexOf(5,5);??//?5 [0,1,2,3,4,5,6].indexOf(5,10);?//?-1???從索引10的位置往后查找

?

例四、lastIndexOf() 查找5所在的位置,默認索引位置當前數組長度減一

1 2 3 4 [0,1,2,3,4,5,6].lastIndexOf(5);???????//?5???從索引位置數組長度減一向前查找 [0,1,2,3,4,5,6].lastIndexOf(5,?6);????//?5 [0,1,2,3,4,5,6].lastIndexOf(5,?10);???//?5 [0,1,2,3,4,5,6].lastIndexOf(5,?1);????//?-1???從索引1的位置向前查找

?

例五、includes

1 2 3 [0,1,2,3,4,5,6].includes(5);?????????????????//?true?????從索引0位置往后查找是否存在5元素,是 [0,1,2,3,4,5,6].includes(10);????????????????//?false [0,1,2,3,4,5,6].includes(5,10);??????????????//?false????從索引10位置往后查找是否存在10元素,否

?

?

?

?

forEach() 方法對數組的每一個元素執行一次提供的函數。

map() 方法創建一個新數組,其結果是該數組都執行一次函數,原函數保持不變。

filter() 方法使指定函數測試數組的每一個元素,并放回一個通過元素的新數組。

some() 方法測試該數組有元素通過了指定函數的測試,如果有返回true,否則,返回false。

every() 方法測試該數組是否全部通過指定函數測試,全部通過返回true,否則,返回false。

?

forEach 遍歷數組

1 2 3 4 5 var?arr?=?["a",?"b",?"c"]; arr.forEach(function(element,index)?{ ????console.log(element,index);?????? });

?

map 返回新數組,為當前元素加字符串m

1 2 3 4 5 6 7 8 9 10 11 12 13 14 var?arr?=?["a",?"b",?"c"]; arr.map(function(element,index)?{ ????return?element?+=?"m"; }); //?將給定數組的元素轉成整數 ["1",?"2",?"3"].map(parseInt);?????????//?[1,?NaN,?NaN] //?等價于 ["1",?"2",?"3"].map(function(value,index,array){ ????return?parseInt(value,index); }); parseInt(3,1);?????????????????????????//?NaN???parseInt(string,?radix)?函數將給定的字符串以指定基數解析成為整數。

?

filter 返回大于10的元素

1 2 3 4 5 6 7 //?12,?130,?44 var?arr?=?[12,?5,?8,?130,?44]; arr.filter(function(value){ ????return?value>10 }); //?等價于 arr.filter((value)=>value>10);

?

some 判斷當前數組有元素大于10的元素

1 2 3 4 var?arr?=?[12,?5,?8,?130,?44]; arr.some(function(value){??????????????????//?true ????return?value>10 });

?

every 判斷當前數組所有元素是否都大于10

1 2 3 4 var?arr?=?[12,?5,?8,?130,?44]; arr.every(function(value){?????????????????//?false ????return?value>10 });

轉載于:https://www.cnblogs.com/macliu/p/6549773.html

總結

以上是生活随笔為你收集整理的JavaScript常用数组方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。