Node.js JSON.parse(string) 返回一个字符串

Bra*_*ell 2 javascript json node.js

我有一个 JSON 对象作为字符串,我使用JSON.parse()解析它,但结果对象仍然是一个字符串。难道我做错了什么?

var myString = "{Username:Brad,Password:12345}";

// adding in the quotes or else it throws an error saying 'unidentified token U
var myJson = JSON.parse('"' + myString + '"');

console.log(myJson.Username); // prints 'undefined'
console.log(typeof(myJson));  // prints 'string'
Run Code Online (Sandbox Code Playgroud)

Pau*_*aul 5

这不是有效的 JSON。键和字符串需要加引号:

var myString = '{"Username":"Brad","Password":12345}';
var myJson = JSON.parse( myString );
Run Code Online (Sandbox Code Playgroud)

有关 JSON 的信息,请参阅 json.org。