簡體   English   中英

無法調用未定義的方法“ unshift”

[英]Cannot call method 'unshift' of undefined

var _array=[];
var someint=44;
var somevalue='a string';
var u=[someint];
_array.unshift(u);
_array[u].unshift('somevalue');//*error

為什么這不起作用?

Uncaught TypeError:無法調用未定義的方法“ unshift”

您已經在“ _array”中添加了一個元素,其索引將為0。但是,您試圖將數組用作數組的索引,但這是行不通的。 那是,

_array[u]

沒有道理。 數組按數字索引。 因此,該表達式的值是undefined ,並且解釋了錯誤消息-您正在嘗試引用值undefined的“ unshift”屬性。 (好吧, undefined實際上不是值,而是任何值。)

采用

_array[0].unshift();

代替

_array[u].unshift('somevalue');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM