2017-01-04 14 views
-1

Ich habe ein Array, wie unten gezeigt, von dem mir einen Schlüsselwert zu schaffen versuchenWie Schlüsselwertpaar erstellen JSON-Array

var text = ["One","TWO","THREE"]; 

var myarray = []; 

$(document).ready(function() { 
for(var i=0;i<text.length;i++) 
{ 
var name = text[i]; 
var toaddstr = 'CNX' 
myarray.push(name+":"+toaddstr); 
} 
console.log(myarray); 
}); 

Als ich das obige Programm die Ausgabe ausführen ich erhalte ist

["One:CNX", "TWO:CNX", "THREE:CNX"] 

ist es möglich, ein Array als diese Weise

[ 
"One": "CNX", 
"TWO": "CNX", 
"THREE": "CNX" 
] 

Das ist meine Geige zu erstellen, lassen sie mich bitte wissen, wie th zu tun

ist

http://jsfiddle.net/cod7ceho/424/

+1

'[ "One": "CNX", "TWO": "CNX", „THREE ":" "CNX" ] 'ist ungültiges JSON- und JS-Objekt – Satpal

Antwort

3

Das Format Sie versuchen, ist zu erstellen nicht syntaktisch korrekt, können Sie keine Schlüssel/Wert-Paare in einem Array. Sie können jedoch ein Objekt statt:

var obj = {}; 
 
["One", "TWO", "THREE"].forEach(function(v) { 
 
    obj[v] = 'CNX'; 
 
}); 
 
console.log(obj);

0

Sie sollten ein Objekt verwenden (die eine JS Karte ist), kein Array. Sehen Sie sich Ihren neuen Code unten an.

var text = ["One","TWO","THREE"]; 

var myarray = {}; 

$(document).ready(function() { 
for(var i=0;i<text.length;i++) 
{ 
var name = text[i]; 
var toaddstr = 'CNX' 
myarray[name] = toaddstr; 
} 
console.log(myarray); 
}); 
1

Das folgende Format:

[ 
"One": "CNX", 
"TWO": "CNX", 
"THREE": "CNX" 
] 

ist keine gültige ein. Es sollte sein:

{ 
    "One": "CNX", 
    "TWO": "CNX", 
    "THREE": "CNX" 
} 

, das zu tun:

var text = ["One", "TWO", "THREE"]; 
 

 
var myarray = {}; 
 

 
for (var i = 0; i < text.length; i++) { 
 
    var name = text[i]; 
 
    var toaddstr = 'CNX' 
 
    myarray[name] = toaddstr; 
 
} 
 
console.log(myarray);