0

文字列コンテンツからオブジェクトを作成することは可能ですか?

たとえば、文字列"{ name: John }"を単純に解析してオブジェクトを作成するにはどうすればよい{ name: 'John' }ですか?

アップデート

残念ながらJSON.parse、私にはうまくいきません。いくつかのトリッキーな文字列もある可能性があります(mongodbを使用している場合)。{ name: John, email: { $exists: true } }

たぶんmongodbクエリパーサーのような別の解決策がありますか?

4

3 に答える 3

2

これはそれを行う1つの方法です。//trim メソッドのコード

 if(typeof String.prototype.trim !== 'function') {
      String.prototype.trim = function() {
        return this.replace(/^\s+|\s+$/g, ''); 
      }
    }

    var s =  "{ name: John }";
    var arr = s.substring(1,s.length-1).trim().split(':');
    var obj = {};
    obj[arr[0]]=arr[1];

    alert(obj.name);
于 2013-06-01T07:35:39.113 に答える
0

取得できる場合は'{"name":"John"}'、JSON としてデコードするだけです。

于 2013-06-01T07:29:57.130 に答える
0

動作中のjsFiddleデモ

文字列は有効な JSON 形式である必要があります。

var s = '{ "name": "John", "family": "Resig" }';

次に、次のように解析できますJSON.parse

var o = JSON.parse(s);

そして、オブジェクトを使用できますo

alert(o.name); // John
alert(o.family); // Resig
于 2013-06-01T07:40:32.170 に答える