What is the correct way to assign a JSON string to a variable? I keep getting EOF errors.
var somejson = "{
"key1": "val1",
"key2": "value2"
}";
What is the correct way to assign a JSON string to a variable? I keep getting EOF errors.
var somejson = "{
"key1": "val1",
"key2": "value2"
}";
You have not escaped properly. You make sure you do:
var somejson = "{ \"key1\": \"val1\",\"key2\": \"value2\"}";
The easier way would be to just convert an existing object to a string using JSON.stringify()
. Would recommend this as much as possible as there is very little chance of making a typo error.
var obj = {
key1: "val1",
key2: "value2"
};
var json = JSON.stringify(obj);
If you want the string, not the object (note the '
instead of "
)
var somejson = '{ "key1": "val1", "key2": "value2" }';
If you want a string declared with multiple lines, not the object (newline is meaningful in Javascript)
var somejson = '{'
+ '"key1": "val1",'
+ '"key2": "value2"'
+ '}';
If you want the object, not the string
var somejson = { "key1": "val1", "key2": "value2" };
If you want a string generically
var somejson = JSON.stringify(someobject);
I think you should use JSON.stringify function. See the answers here - Convert JS object to JSON string
var somejson = {
"key1": "val1",
"key2": "value2"
};
somjson = JSON.stringify(somejson);
Best way to assign JSON string value to a variable.
var somejson = JSON.parse('{"key1": "val1","key2": "value2"}')