On Wed Jan 21 2015 at 2:42:55 PM Roelof Wobben <[email protected]> wrote:

> Hello,
>
> I have this :
>
> ~~~
>
> var user = {
>   username: 'The Reddest',
>   email: '[email protected]',
>   firstName: 'Brandon',
>   lastName: 'Cannaday'
> };
> JSON.parse(user, function (k, v) {
>     console.log(k);
>     return v;
> })
>
> ~~~
>
> but when I do node test.js to run the file I see this output :
>
> ~~~
>
>
> undefined:1
>
> [object Object]
>
>  ^
>
> SyntaxError: Unexpected token o
>
>     at Object.parse (native)
>
> ~~~
>
> Can somone tell me what is the right way to parse and see the output of a
> json file.
>

In the code above, there is an object, not JSON. JSON is the serialized
(string/text) representation of a subset of JavaScript "data". That "data"
 can be a string, number, array, object, null, true, or false

```
$ node
> JSON.parse('"a"')
'a'
> JSON.parse('1')
1
> JSON.parse('[]')
[]
> JSON.parse('{}')
{}
> JSON.parse('null')
null
> JSON.parse('true')
true
> JSON.parse('false')
false
```


When you store JSON in a file, like so:

// a.json
{
  "name": "Rick",
  "age": 33
}

... It must be valid, per the grammar rules of JSON, note the strings are
all double quoted, but the number is not.

// a.js
var fs = require("fs");
fs.readFile("a.json", "utf8", function(err, json) {
  // turn the valid json text back into an object.
  var object = JSON.parse(json);
  console.log(object);

  console.log(typeof json);
  console.log(typeof object);
});


$ node a.js
{ name: 'Rick', age: 33 }
string
object




Rick

>
>

-- 
Job board: http://jobs.nodejs.org/
New group rules: 
https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/nodejs/CAHfnhfrPRb1K45ooU6cfjn8_cotNDH4tPQTRro%3Dm5nNhCWewcg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to