[精讚] [會員登入]
2044

[Javascript] 陣列、陣列的操作

Javascript 的陣列操作:宣告、取值、賦值、插入或移除項目,檢查KEY、檢查是否為陣列等等

此文完整連結 http://n.sfs.tw/13211

複製連結 [Javascript] 陣列、陣列的操作@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 14:11:43 最後編修
2019-04-02 22:51:45 By 張○○
 

自動目錄

Javascript 的陣列操作,做個筆記

宣告

var arr=array();

var arr=[];

var arr=[1,5,66,7,2];

var arr=["a","ccc",234,6];

var arr2=new Array(40, 100, 1, 5, 25, 10); // 不建議寫法[4],不要用 new Array()來初始陣列

帶key name的陣列不建議使用,因為無法計算長度等問題[4]

var person = [];
person["firstName"] = "John";
person["lastName"] = "Doe";
person["age"] = 46;
var x = person.length;     // person.length will return 0
var y = person[0];         // person[0] will return undefined

陣列取值

var a= arr[1];

var b= arr['ddd'];

 

陣列長度

var len= arr.length;

 

塞入項目

arr.push("fromlast");  //由後面置入

list[ list.length ] = "baz";  // 同上

arr.unshift("fromfirst");  //放最前面

 

移除項目[6]

切掉後面的項目,直接設定length

var ar = [1, 2, 3, 4, 5, 6];
ar.length = 4; // set length to remove elements ar= [1, 2, 3, 4]

拿掉最後

ar.pop();

拿掉第一個

ar.shift();

使用 splice(位置,個數)

var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];
var removed = arr.splice(2,3);
/* removed === [3, 4, 5]
   arr === [1, 2, 6, 7, 8, 9, 0] */

 

把字串拆解為陣列

var arr=str.split(',');

 

把陣列組成為字串

var str=arr.join(',')

 

檢查是否為陣列[4]

Array.isArray(yourarray);   // returns true/false

 

檢查 key是否存在[2]

if (typeof arr[key] != "undefined"){ }  //陣列中的key為變數

if ("key" in arr){ }

 

陣列排序

arr.sort();  //由文字來排序,若要由值或自訂,請參考[5]

var array1 = [1, 30, 4, 21, 100000];
array1.sort();
console.log(array1); // expected output: Array [1, 100000, 21, 30, 4]

 

參考資料

[1] https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/join

[2] https://stackoverflow.com/questions/2613192/check-if-an-array-item-is-set-in-js

[3] https://www.hostingadvice.com/how-to/javascript-add-to-array/

[4] https://www.w3schools.com/js/js_arrays.asp

[5] https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

[6] https://love2dev.com/blog/javascript-remove-from-array/

你可能感興趣的文章

[jQuery] textarea 的取值和給值 HTML 的 TEXTAREA 標籤若要用 jquery 取值,不能使用 .text() 或 .html() ,使用 .

[Javascript] 偵錯方式 (火狐中的javascript偵錯) javascript 並不是很容易偵錯(debug)的語言,但那是以前,現在有很多瀏覽器支持很多的工具,此文以火狐為例談談偵錯...

Javascript/Jquery 建立、讀取、刪除cookie值 Javascript/Jquery 建立、讀取、刪除cookie值

[Javascript] 陣列、陣列的操作 Javascript 的陣列操作:宣告、取值、賦值、插入或移除項目,檢查KEY、檢查是否為陣列等等

[Javascript] NaN是什麼? javascript 的NaN和取得整數

正則表達式:Email名稱防止連續輸入點(.)及下底線(_) Email的名稱中要允許特殊符號,但又不允許連續出現的正則表達式

[jQuery] select 元件的取值及給值 html中的元件select,在jquery中要如何使用?

[jQuery] checkbox 及 radio 設定值 jQuery 之 checkbox 及 radio 取值及設定值的方法

[Ckeditor4] 讀、寫與插入內容到欄位 Ckeditor4 提供非常多方法,可以插入、讀取和寫入到TEXTAREA中

[CKeditor4] 設定區塊樣式、段落格式、字型名稱及字型大小 CKeditor4中要自訂設定區塊樣式、段落格式、字型名稱及字型大小。

我有話要說


限制:留言最高字數1000字,超過部分會被截掉。請注意:留言不可帶有網址,會被濾掉。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

[jQuery] textarea 的取值和給值 HTML 的 TEXTAREA 標籤若要用 jquery 取值,不能使用 .text() 或 .html() ,使用 .

[jQuery] select 元件的取值及給值 html中的元件select,在jquery中要如何使用?

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

UTF-8 BOM (Byte Order Mark) 的問題 在 Michael Kaplan 那看到 Every character has a story #4: U+feff

[Windows7] 移除IE10及移除IE11 Windows7 不得已的情況要移除IE11或IE10怎麼做?