首頁 web前端 js教程 淺談Javascript中陣列物件的常用屬性

淺談Javascript中陣列物件的常用屬性

Oct 12, 2018 pm 04:46 PM
javascript 陣列

本文跟大家介紹Javascript中陣列物件的常用屬性 ,有一定的參考價值,有需要的朋友可以參考一下,希望對你們有幫助。

concat() 

用於連接兩個或多個陣列。此方法不會改變現有的數組,而只會傳回被連接數組的一個副本。

var a = ["aa","ccc"];
var b = ["vv","mm"];
var c = ["123"];
var d = a.contac(b,c);  ==> ["aa","ccc","vv","mm","123"]
登入後複製

every()

用於偵測陣列所有元素是否都符合指定條件(透過函數提供)。

every() 方法使用指定函數來偵測陣列中的所有元素:

  • #如果陣列中偵測到有一個元素不滿足,則整個表達式會傳回false ,且剩餘的元素不會再進行偵測。

  • 如果所有元素都符合條件,則傳回 true。

注意: every() 不會對空數組進行偵測。

注意: every() 不會改變原始陣列。

var ary = [3,4,5,6,7];
var result = ary.every(function(item){   
     return item>5;          
}) ==> false
登入後複製

filter()

建立一個新的數組,新數組中的元素是透過檢查指定數組中符合條件的所有元素。

注意: filter() 不會對空數組進行偵測。

注意: filter() 不會改變原始陣列。

var ary = [2,3,5,6,7];
var result = ary.filter(function(item){   
     return item>3;
}); ==> [5,6,7]
登入後複製

forEach()

#用於呼叫陣列的每個元素,並將元素傳遞給回呼函數。

var ary = [3,4,5,6,7];
var result = ary.forEach(function(item,index){
   console.log(item,index)         
});
登入後複製

 includes()

#用來判斷一個陣列是否包含一個指定的值,如果是傳回 true,否則false。

arr.includes(searchElement)
arr.includes(searchElement, fromIndex)
// searchElement   要查找的元素
// fromIndex  开始查找的位置,默认为0;如果fromIndex 大于等于数组长度 ,则返回 false ,该数组不会被搜索
//如果 fromIndex 为负值,计算出的索引将作为开始搜索searchElement的位置。如果计算出的索引小于 0,则整个数组都会被搜索。
登入後複製
var arr = ['a', 'b', 'c'];
arr.includes('a'); // true
arr.includes('a', -100); // true
登入後複製

indexOf()

#可傳回陣列中某個指定的元素位置。如果在陣列中沒找到指定元素則傳回 -1。

var num = [1,2,3,4,'Apple'];
var a = num.indexOf("Apple");  //4
登入後複製

lastIndexOf()

可傳回一個指定的元素在陣列中最後出現的位置,在一個陣列中的指定位置從後向前搜尋。如果要檢索的元素沒有出現,則該方法傳回 -1。

var num = [1,2,3,4,'Apple'];
var a = num.lastIndexOf("Apple");  //4
登入後複製

isArray()

#用於判斷物件是否為陣列。如果物件是數組傳回 true,否則傳回 false。

var item = [];
Array.isArray(item);  //true
登入後複製

join()

用於將陣列中的所有元素轉換一個字串。元素是透過指定的分隔符號進行分隔的。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var energy = fruits.join();  //Banana,Orange,Apple,Mango
var energy = fruits.join("|");  //Banana|Orange|Apple|Mango
登入後複製

map()

傳回一個新數組,數組中的元素為原始數組元素呼叫函數處理後的值。

  map() 方法依照原始陣列元素順序依序處理元素。

  注意: map() 不會對空數組進行偵測。

  注意: map() 不會改變原始陣列。

var ary= [4,9,16,25];
var result = ary.map(Math.sqrt); //result ==> 2,3,4,5
登入後複製

pop()

用於刪除陣列的最後一個元素並傳回刪除的元素。

var ary = [2,4,5,6];
var del = ary.pop(); //del ==> 6
// ary ==> 2,4,5
登入後複製

push()

可在陣列的末端新增一個或多個元素,並傳回新的長度。

var ary = ['aa','bb','cc'];
var result = ary.push('ss');  //result ==> 4
//ary ==> ['aa','bb','cc','ss']
登入後複製

shift()

用於刪除並傳回陣列的第一個元素。

var ary = [2,4,5,6];
var del = ary.shift(); //del ==> 2 
// ary ==> 4,5,6
登入後複製

unshift()

#可在陣列的開頭新增一個或更多元素,並傳回新的長度。

var ary = ['aa','bb','cc'];
var result = ary.unshift('ss');  //result ==> 4
//ary ==> ['ss','aa','bb','cc']
登入後複製

reduce()

#接收一個函數作為累加器,陣列中的每個值(從左到右)開始縮減,最終計算為一個值。

這個函數必須接收兩個參數,reduce()把結果繼續和序列的下一個元素做累積計算。

注意: reduce() 對於空數組是不會執行回呼函數的。

var arr = [1, 3, 5, 7, 9];
arr.reduce(function (x, y) {    return x + y;
}); // 25
登入後複製

reduceRight() 方法的功能和reduce() 功能是一樣的,不同的是reduceRight() 從數組的末尾向前將數組中的數組項做累加。

reverse()

用於顛倒陣列中元素的順序。

var fruits = [1, 2, 3, 4];
fruits.reverse();  // [4,3,2,1]
登入後複製

slice()

可從現有的陣列中傳回選定的元素。

slice()方法可提取字串的某個部分,並以新的字串傳回被提取的部分。

注意: slice() 方法不會改變原始陣列。

傳回一個新的陣列,包含從 start 到 end (不包含該元素)的 arrayObject 中的元素。

array.slice(start, end)
//start 可选。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。
//end 可选。规定从何处结束选取。
//该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。
//如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
登入後複製
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1,3);   // ["Orange", "Lemon"]
登入後複製

some()

用于检测数组中的元素是否满足指定条件(函数提供)。

some() 方法会依次执行数组的每个元素:

  • 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。

  • 如果没有满足条件的元素,则返回false。

var arr = [1, 3, 5, 7, 9];
arr.some(function (item) {    
    return item>4;
}); // true
登入後複製

sort()

用于对数组的元素进行排序。返回新的数组

排序顺序可以是字母或数字,并按升序或降序。默认排序顺序为按字母升序。

注意:当数字是按字母顺序排列时"40"将排在"5"前面。

使用数字排序,你必须通过一个函数作为参数来调用。

函数指定数字是按照升序还是降序排列。

注意: 这种方法会改变原始数组!。

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();   // Apple,Banana,Mango,Orange

//升序
var points = [40,100,1,5,25,10];
points.sort(function(a,b){return a-b});  //1,5,10,25,40,100

//降序
var points = [40,100,1,5,25,10];
points.sort(function(a,b){return b-a});  // 100,40,25,10,5,1
登入後複製

splice()

用于插入、删除或替换数组的元素。

注意:这种方法会改变原始数组!

array.splice(index,howmany,item1,.....,itemX)
//index 必需。规定从何处添加/删除元素。该参数是开始插入和(或)删除的数组元素的下标,必须是数字。
//howmany      必需。规定应该删除多少元素。必须是数字,但可以是 "0"。如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。
//item1, ..., itemX  可选。要添加到数组的新元素

//如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
登入後複製
//移除数组的第三个元素,并在数组第三个位置添加新元素:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2,1,"Lemon","Kiwi"); //["Banana", "Orange", "Lemon","Kiwi","Mango"]

//从第三个位置开始删除数组后的两个元素:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2,2);  //["Banana", "Orange"]
登入後複製

toString()

可把数组转换为字符串,并返回结果。

注意: 数组中的元素之间用逗号分隔。

array.toString()
登入後複製

valueOf()

返回 Array 对象的原始值。

该原始值由 Array 对象派生的所有对象继承。

valueOf() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中。

注意: valueOf() 方法不会改变原数组。

//valueOf() 是数组对象的默认方法。
// fruits.valueOf()与 fruits返回值一样。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var v=fruits.valueOf();
登入後複製

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。更多相关教程请访问JavaScript视频教程

相关推荐:

JavaScript图文教程

JavaScript在线手册

以上是淺談Javascript中陣列物件的常用屬性的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1319
25
PHP教程
1269
29
C# 教程
1248
24
如何使用 foreach 迴圈移除 PHP 陣列中的重複元素? 如何使用 foreach 迴圈移除 PHP 陣列中的重複元素? Apr 27, 2024 am 11:33 AM

使用foreach循環移除PHP數組中重複元素的方法如下:遍歷數組,若元素已存在且當前位置不是第一個出現的位置,則刪除它。舉例而言,若資料庫查詢結果有重複記錄,可使用此方法移除,得到不含重複記錄的結果。

PHP數組深度複製的藝術:使用不同方法完美複製 PHP數組深度複製的藝術:使用不同方法完美複製 May 01, 2024 pm 12:30 PM

PHP中深度複製數組的方法包括:使用json_decode和json_encode進行JSON編碼和解碼。使用array_map和clone進行深度複製鍵和值的副本。使用serialize和unserialize進行序列化和反序列化。

PHP 陣列鍵值翻轉:不同方法的效能比較分析 PHP 陣列鍵值翻轉:不同方法的效能比較分析 May 03, 2024 pm 09:03 PM

PHP數組鍵值翻轉方法效能比較顯示:array_flip()函數在大型數組(超過100萬個元素)下比for迴圈效能更優,耗時更短。手動翻轉鍵值的for迴圈方法耗時相對較長。

PHP數組多維排序實戰:從簡單到複雜場景 PHP數組多維排序實戰:從簡單到複雜場景 Apr 29, 2024 pm 09:12 PM

多維數組排序可分為單列排序和嵌套排序。單列排序可使用array_multisort()函數依列排序;巢狀排序需要遞歸函數遍歷陣列並排序。實戰案例包括按產品名稱排序和按銷售量和價格複合排序。

PHP 數組分組函數在資料整理的應用 PHP 數組分組函數在資料整理的應用 May 04, 2024 pm 01:03 PM

PHP的array_group_by函數可依鍵或閉包函數將陣列中的元素分組,傳回關聯數組,其中鍵為組名,值是屬於該組的元素數組。

深度複製PHP數組的最佳實踐:探索高效的方法 深度複製PHP數組的最佳實踐:探索高效的方法 Apr 30, 2024 pm 03:42 PM

在PHP中執行陣列深度複製的最佳實踐是:使用json_decode(json_encode($arr))將陣列轉換為JSON字串,然後再轉換回陣列。使用unserialize(serialize($arr))將陣列序列化為字串,然後將其反序列化為新陣列。使用RecursiveIteratorIterator迭代器對多維數組進行遞歸遍歷。

探索 PHP 陣列去重演算法的複雜度 探索 PHP 陣列去重演算法的複雜度 Apr 28, 2024 pm 05:54 PM

PHP陣列去重演算法的複雜度:array_unique():O(n)array_flip()+array_keys():O(n)foreach迴圈:O(n^2)

PHP 陣列分組函數在尋找重複元素中的作用 PHP 陣列分組函數在尋找重複元素中的作用 May 05, 2024 am 09:21 AM

PHP的array_group()函數可用來按指定鍵對陣列進行分組,以尋找重複元素。函數透過以下步驟運作:使用key_callback指定分組鍵。可選地使用value_callback確定分組值。對分組元素進行計數並識別重複項。因此,array_group()函數對於尋找和處理重複元素非常有用。

See all articles