var a = new array(); a [1] ='A'; '0'='B'; b [10] ='B'; console.log(a); /[未定義, 「A」,未定義未定義,未定義未定義,未定義未定義, 未定義未定義, 「B」]/ 我想刪除未定義元件 但什麼是過程??javascript數組索引問題!
0
A
回答
6
首先,jQuery與此無關。
其次,數組是「自動填充的」。如果您定義索引10
,則所有索引0
- 9
將自動佔用,這正是Javascript數組的工作方式。
什麼你正在尋找可能是一個對象:
var a = {};
a[1] = 'A';
a[10] = 'B';
或
var a = {
1 : 'A',
10 : 'B'
};
1
好,以消除那些undefined
部位做
a[0] = 'A';
a[1] = 'B';
在你的代碼片段,你充滿指數10
迫使ECMAScript中與10 fields
創建一個數組的元素。沒有關於1
和10
之間的所有字段的定義,這意味着這些字段正確undefined
。
要刪除那些字段,您必須設置適當的值或map
值non-undefined
值到一個新的數組中,如果您首先創建了一個正確的數組,那麼這個數組就是不必要的。
創建一個真正的object
而不是一個數組(實際上也是一個對象)以獲得所需的行爲。
var a = {};
a[1] = 'A';
a[2] = 'B';
console.log(a);
+0
但我需要索引編號,所以我做了:( – 2010-08-04 06:33:51
1
在這種情況下,你可以使用一個Object
代替Array
像這樣:
var a = {}; // or var a = new Object();
a[1] = 'A';
a[10] = 'B';
a['foo'] = 'bar';
a.bar = 'foo'; // same as a['bar'] = 'foo';
console.log(a);
1
數組始終從0開始,然後上升到最後填充的索引。 你可以使用一個對象來解決問題:
var a = {};
a[1] = 'A';
a[10] = 'B';
相關問題
- 1. Javascript索引數組問題
- 2. SuiteScript/JavaScript數組索引問題
- 3. 數組索引問題
- 4. Javascript數組索引
- 5. Javascript數組+索引
- 6. javascript splice()索引問題
- 7. javascript有索引問題
- 8. Javascript - 創建數組索引和訪問
- 9. 在JavaScript中訪問索引數組
- 10. Python元組索引問題
- 11. PHP:關聯數組索引問題
- 12. PHP的preg_replace()索引數組問題
- 13. 問題的PHP數組索引
- 14. Java中的數組索引問題
- 15. 甲屏蔽數組索引問題
- 16. 數組索引中的邏輯問題
- 17. 子字符串數組索引問題
- 18. 數組問題 - 關於索引。 c#
- 19. 關於訂購的問題 - 在Javascript中索引多維數組
- 20. 問題與JavaScript變量引用數組
- 21. JavaScript數組索引測試
- 22. Javascript數組索引對象
- 23. 更改Javascript數組索引
- 24. Javascript數組索引錯誤
- 25. JavaScript數組排序()索引
- 26. Javascript數組問題
- 27. JavaScript數組問題
- 28. Javascript數組問題
- 29. JavaScript數組問題
- 30. JavaScript數組問題
但我需要的值列表 – 2010-08-04 06:41:43