Каков правильный способ назначения строки JSON переменной? Я продолжаю получать ошибки EOF.Как назначить строку JSON переменной Javascript?
var somejson = "{
"key1": "val1",
"key2": "value2"
}";
http://jsfiddle.net/x7rwq5zm/1/
Каков правильный способ назначения строки JSON переменной? Я продолжаю получать ошибки EOF.Как назначить строку JSON переменной Javascript?
var somejson = "{
"key1": "val1",
"key2": "value2"
}";
http://jsfiddle.net/x7rwq5zm/1/
Вы не экранированы. Вы убедитесь, что вы делаете:
var somejson = "{ \"key1\": \"val1\",\"key2\": \"value2\"}";
Легче всего было бы просто преобразовать существующий объект в строку, используя JSON.stringify()
. Порекомендовал бы это как можно больше, так как очень мало шансов сделать опечатку.
var obj = {
key1: "val1",
key2: "value2"
};
var json = JSON.stringify(obj);
Ваш ответ, безусловно, действует, но, вероятно, проще использовать ' '' не выход все. –
приятно знать. Из любопытства, какая среда? Я никогда не сталкивался с этим. Я бы предположил, что он будет создан как строка, и любой последующий синтаксический анализ не будет знать, как эта строка была создана. –
@DylanWatt предназначался для клика по редактированию, нажав удаление. Усталый, lol. Я столкнулся с некоторыми проблемами в nodejs в другом проекте, который работал над использованием одинарных кавычек. При этом, возможно, это уже не проблема в более новых версиях> 0.10.x –
Я думаю, вы должны использовать функцию JSON.stringify. Смотрите ответы здесь - Convert JS object to JSON string
var somejson = {
"key1": "val1",
"key2": "value2"
};
somjson = JSON.stringify(somejson);
Если вы хотите строку, а не объект (обратите внимание на '
вместо "
)
var somejson = '{ "key1": "val1", "key2": "value2" }';
Если вы хотите строку объявленную с несколькими линиями, а не объект (новая строка имеет смысл в Javascript)
var somejson = '{'
+ '"key1": "val1",'
+ '"key2": "value2"'
+ '}';
Если вы хотите, чтобы объект, а не строка
var somejson = { "key1": "val1", "key2": "value2" };
Если вы хотите строку обобщенно
var somejson = JSON.stringify(someobject);
Я предполагаю, что вы ищете 'JSON.parse()' – hindmost