2012-02-28 13 views
0

良好的一天,推使用jQuery陣列到一個數組(從恆定)

我在一個文件中的一個空數組,並與在另一個數據的數組。我想把所有的數據從一個推到另一個。我的問題是這個數組是在一個CONSTANT中。正常的方式到.push或.add到數組不起作用。任何幫助表示讚賞。

文件1 - 陣列

var CONSTANTS = { 

    LOCATION_LOOKUP_DATA :[], // want to add array data inside this array 
    }; 

文件2 - 陣列

var AVAILABLE_ZIPS_Widget = [ 

    ["10501","10502","10504","10505"] 
    ]; 

CONSTANTS.LOCATION_LOOKUP_DATA.push(AVAILABLE_ZIPS_Widget); 
+4

JavaScript沒有常量。 – zzzzBov 2012-02-28 23:49:16

+1

「不工作」是很難破譯的錯誤。你究竟做了什麼?究竟發生了什麼錯誤?錯誤是什麼? – jergason 2012-02-28 23:49:18

+1

是否有你使用所有大寫標識符的理由? Javascript通常是一個駱駝案例語言。 – JaredPar 2012-02-28 23:50:12

回答

1

我想你的意思是使用:

CONSTANTS.LOCATION_LOOKUP_DATA.push(AVAILABLE_ZIPS_Widget[0]); 
+0

對不起,提供足夠的信息。這是漫長的一天。 :) zz我正在處理現有的代碼,它具有包含幾個數組的var CONSTANTS。我只使用大寫字母,因爲前面的代碼中有大寫字母的標識符。我可以使用camelCase – latoyale 2012-02-29 00:08:02

+0

@Jergason - 我試過了CONSTANTS.LOCATION_LOOKUP_DATA.push(AVAILABLE_ZIPS_Widget);這並沒有奏效。我也嘗試了CONSTANTS.LOCATION_LOOKUP_DATA.add(AVAILABLE_ZIPS_Widget);這並沒有奏效。 – latoyale 2012-02-29 00:08:52

+0

謝謝,我正在嘗試代碼,但我收到來自編譯器的消息,說「調用構造函數時缺少'新'前綴。」我需要修復我的語法,然後才能測試此代碼 – latoyale 2012-02-29 00:19:52

2

有幾個問題這裏

  • AVAILABLE_ZIPS_Widget是2D陣列,但僅具有單一的陣列值。如果可能只是一維數組
  • 您正在推動整個數組作爲一個單一的值,而不是單獨推數組的元素

請嘗試以下

var AVAILABLE_ZIPS_Widget = ["10501","10502","10504","10505"]; 
for (var i = 0; i < AVAILABLIE_ZIPS_Widget.length; i++) { 
    CONSTANTS.LOCATION_LOOKUP_DATA.push(AVAILABLE_ZIPS_Widget[i]); 
} 
0

它對我有用,你試過了嗎?

CONSTANTS.LOCATION_LOOKUP_DATA.push(AVAILABLE_ZIPS_Widget[0]); 
+0

使用alert(alert(AVAILABLE_ZIPS_Widget [0]);)進行測試時,這確實爲我提供了數組內的所有數據。但是數據不會推送到新陣列。 – latoyale 2012-02-29 16:07:06

0

我想你想使用的,而不是推CONCAT

CONSTANTS.LOCATION_LOOKUP_DATA.concat(AVAILABLE_ZIPS_Widget [0]);

你正在用push進行的操作是向數組中添加一個新成員。

您將結束: [[[ 「10501」, 「10502」, 「10504」, 「10505」]]]

這也是我的猜測是可能不是你所期待的。