Вставьте переменную Javascript в объект JSON - PullRequest
0 голосов
/ 14 сентября 2018

У меня есть объект JSON, подобный следующему:

var values = {
"email": " ' + fn + ' ", // This field is required to identify existing customers.
"first_name": "email",
"last_name": "email",
"address": "email",
"city": "email",
"state": "email",
"zip": "email",
"dob": "email" // This field must match the following format: YYYYMMDD. This field is also required
};

Я пытаюсь вставить:

var fn = 'Tom'; 

Но переменная не появляется.Как я могу пойти по этому поводу?

Ответы [ 2 ]

0 голосов
/ 14 сентября 2018

Стандартный способ использования JSON с javascript - создать объект в вашем приложении, в этом случае он может выглядеть примерно так

var values = {
   email: "Tom@whatever",
   name: "Tom"
}

Вы можете взаимодействовать с этим объектом так, как вам нравится, например,

values.city = "New York";

Затем, когда вы будете готовы создать объект JSON, который представляет этот объект, вы можете использовать JSON.stringify() Документы MDN здесь

В этом случае

let jsonString = JSON.stringify(values);
console.log(jsonString);

дает такой результат:

{"email":"Tom@whatever","name":"Tom","city":"New York"}

Это означает, что вам вообще не нужно беспокоиться о создании строки JSON!

Подробнее о JSON здесь

0 голосов
/ 14 сентября 2018

Проблема в том, что " ' + fn + ' " обрабатывается как строка, поэтому fn никогда не будет заменено.То, что вы ищете:

var fn = "Tom";

var values = {
"email": " " + fn + " ", // This field is required to identify existing customers.
"first_name": "email",
"last_name": "email",
"address": "email",
"city": "email",
"state": "email",
"zip": "email",
"dob": "email" // This field must match the following format: YYYYMMDD. This field is also required
};

Вы можете просто использовать email: fn, если вам не нужно место спереди и сзади

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...