badtant
badtant

Reputation: 183

turn string into an array?

If I have this below as a string, how can I easily make that into an array?

"[[0.01,4.99,0.01],[5,14.95,0.05]]"

I want the same result as:

var x = [[0.01,4.99,0.01],[5,14.95,0.05]];

Upvotes: 4

Views: 156

Answers (2)

Prinzhorn
Prinzhorn

Reputation: 22508

var x = JSON.parse("[[0.01,4.99,0.01],[5,14.95,0.05]]");

Or the way jQuery does JSON parsing (better than eval):

var x = (new Function("return " + "[[0.01,4.99,0.01],[5,14.95,0.05]]"))();

To make this answer complete, you can use a polyfill for older browsers to support JSON.parse and JSON.stringify. I recommend json3, because Crockfords json2 is to crockfordy (insiders know what I mean).

Upvotes: 9

Andras Zoltan
Andras Zoltan

Reputation: 42343

var x = JSON.parse("[[0.01,4.99,0.01],[5,14.95,0.05]]");

For older browsers that don't have the built-in JSON object you might want to download Crockford's json2.js, which defines a JSON object with the same API if it's not already defined.

Upvotes: 5

Related Questions