2014-11-05 56 views
-3

這是JavaScript中的一個基本問題。我嘗試了很多玩法,但我不能解決問題。我有個數組。帶雙引號的javascript數組值

var keys = ["a", "b", "c"]; 
var array =[]; 

我這個循環鍵形成另一個陣列

for (var i =0; i<keys.length; i++){ 
array[i]= "x" + keys[i]; 
} 

如果我打印這個數組

我得到['xa'];但我需要的是["xa"] 唯一的區別是quotes "" ..

爲什麼因爲我必須在另一個json中使用這個數組和雙引號一樣。在此先感謝..

考慮我的JSON數組名作爲最終,

var query = { 
      "_source": { 
       "include": final 
       }. 

現在這裏查詢正在形成像

var query = { 
      "_source": { 
       "include": '["xa"]' 
       } 

但我需要:

var query = { 
      "_source": { 
       "include": ["xa"] 
       } 
+0

您的瀏覽器可能會被輸出作爲'''。其他人會輸出爲''',你需要檢查並替換你自己。 – ArtOfCode 2014-11-05 17:53:50

+1

你有沒有機會尋找'JSON.stringify()'? – 2014-11-05 17:55:23

+0

這對我來說是''''。 – Bijan 2014-11-05 17:55:28

回答

0

使用單引號並在其中放置雙引號。 array [i] ='「x'+ keys [i] +''';

+0

謝謝..但是當我使用該數組它來像['「xa」']但我需要[「xa」] – Subburaj 2014-11-05 17:59:48

1

如果您可以通過JSON剛剛經歷過一定不會有問題,但如果你第一次讀它作爲一個字符串,您使用的字符串作爲參數後,就可以使用替換功能。你可以像我在這裏一樣去做。 How to replace all occurrences of a string in JavaScript?

+0

我不希望它轉換成字符串,因爲當我在json中使用它與singelquotes .. – Subburaj 2014-11-05 17:57:43

0

我想你對你在控制檯上看到的東西感到困惑。字符串本身並不具有與它們相關的單引號或雙引號。因此,如果您的瀏覽器將其顯示爲['a','b','c']["a","b","c"],則無關緊要。該數組仍然包含相同的東西。你在乎的是如何將它轉換成字符串,就像你在你的問題中所說的那樣。你說你需要使用雙引號。嘗試使用JSON.stringify()。你會注意到這會以你想要的格式輸出一個字符串。下面是一個簡單的例子:

var myArray = ['a', 'b', "c"]; 
// notice I even used a mix of single and double quotes in the declaration 
var arrayAsString = JSON.stringify(myArray); 
console.log(arrayAsString); 

輸出將是:

["a","b","c"] 
+0

謝謝,我得到的數組resut作爲[「xa」],因爲我已經說過我在json中使用這個數組,當我在json中使用這個數組時,我得到'[「xa」]'我能做什麼。 – Subburaj 2014-11-05 18:17:12

+0

「在json中使用這個數組」是什麼意思?目前還不清楚你想做什麼。 – forgivenson 2014-11-05 18:19:46