26

文字列オブジェクトの値を変数に適用する方法例。

var str='{a:"www"}'

今設定する方法

var obj={a:"www"}

eval()を試しましたが、機能しません

4

2 に答える 2

40

eval文字列が有効なJSONではないことは言うまでもなく、これは実際にはMDNソリューションevalであるため、唯一のオプションです(そのためのライブラリを含めたくない場合)。

var str='{a:"www"}';
var obj=eval("("+str+")");
console.log(obj);

Chrome Dev Toolでのクイックテスト:

eval("("+'{a:"www"}'+")")
Object
    a: "www"
    __proto__: Object

文字列を括弧で囲み、外側 に割り当てることを忘れないでくださいeval。そうすれば、(比較的)安全になります。

于 2012-12-05T08:00:00.667 に答える
27
var str='{"a":"www"}';
var obj = JSON.parse(str);
于 2012-12-05T07:33:24.730 に答える