#javascript #node.js
#javascript #node.js
Вопрос:
-
Я создал объект record, который содержит ряд атрибутов (var record = {…})
-
console.log (запись) дает мне:
{ 'Label': 'Test Location 3',
'Doshii Location ID': '123',
'Zip API Key': 'LBUcHlihsel7JkiCuPykiRuQ1 upbiEZuRFYU/cI/VZ7e0u0ldSkJlcD/NvTUZJCkMznQ8Wk4/qPfzfyfopzQcATzkde3H/0EQbwfJ3qWY5GZj8aK2yUNPGP rLZA3BeQOQhu4iJuZsVdno/prfG7419x78v5P1fwY8AMC6u6nSUW69bjD5dplMqdH7fQ 1gWlN0UIpMzJeY7TugELofk85DdQHxtu7/oeKiSdJ0Qs6Z/FprWEqcyUgKVHwsUBcGyIYzrGZx4Yt/GjanlhYhibPtmHyMQUseZ7x5TJodSlDxjHR8pSa6 MXLQ9xRs8Hn6COr7vVnIGMJtMkkNxmJ/g==',
'Zip Location ID': '123' }
console.log(JSON.stringify(record));
дает мне:
{"Label":"Test Location 3","Doshii Location ID":"123","Zip API Key":"LBUcHlihsel7JkiCuPykiRuQ1 upbiEZuRFYU/cI/VZ7e0u0ldSkJlcD/NvTUZJCkMznQ8Wk4/qPfzfyfopzQcATzkde3H/0EQbwfJ3qWY5GZj8aK2yUNPGP rLZA3BeQOQhu4iJuZsVdno/prfG7419x78v5P1fwY8AMC6u6nSUW69bjD5dplMqdH7fQ 1gWlN0UIpMzJeY7TugELofk85DdQHxtu7/oeKiSdJ0Qs6Z/FprWEqcyUgKVHwsUBcGyIYzrGZx4Yt/GjanlhYhibPtmHyMQUseZ7x5TJodSlDxjHR8pSa6 MXLQ9xRs8Hn6COr7vVnIGMJtMkkNxmJ/g==","Zip Location ID":"123"}
-
var label = record["Label"]
; -
var newLocationObj = {
doshiiLocationId: record["Doshii Location ID"],
label: label,
zipApiKey: record["Zip API Key"],
zipLocationId: record["Zip Location ID"],
ownerUserKey: req.body.ownerUserKey,
createdByUserKey: tokenResult.userKey,
createdDate: currentDate,
lastModifiedDate: currentDate
}; -
console.log("new location object - ",newLocationObj);
-
Вывод:
новый объект location —
{ doshiiLocationId: '123',
label: undefined,
zipApiKey: 'YlBEMw3YfX7uHiD8N8fjBI/Vq1IDVyjJhd1tN/gHrzIXLQ2iokJhfdx4Xuk8ovn4cFE6ftnxtDK/9WKKhEWtSVJgbBLBDhivLTe6k2y8S4e5x9QP2EQIIOM/psU CL0ECO6S UV859KOybI7MQZ4R 3wpTXeRn/k7uHX//Nnto/kqICTzh8ua4gkKRxdG2BnlvU0A54GzC MTAWvRSAmjHMOupT3PrIEv/vMnpdVqFMNk8e0Ks o6TOsYS/NEue5OKYRkPhZwhrgJj12Tz5Mphi8 XJcGSRw1X5unTmpG5q6FUF/ekv3Xig4KAvrOPJWImPSZqvIU0V4rG7Y9H uNw==',
zipLocationId: '123',
ownerUserKey: 'a791154f-c978-4c4d-8721-d3ee4e910fdf',
createdByUserKey: 'a791154f-c978-4c4d-8721-d3ee4e910fdf',
createdDate: '2019-04-03T09:53:57.724Z',
lastModifiedDate: '2019-04-03T09:53:57.724Z' }
Я ни за что на свете не могу понять, почему label не определен… Есть идеи?
Комментарии:
1.
Label
перед ним стоит символ U FEFF ( пробел без разрыва нулевой ширины ) jsfiddle.net/adigas/3mac6qbr2. Вы можете попытаться отладить это и сделать
console.log(Object.keys(record));
, чтобы получить массив ключей, которые вы можете использовать для доступа к значениям свойств. Кроме того, проверьте, нет ли в ключе каких-либо невидимыхLabel
символов3. О, и, пожалуйста , отформатируйте свой код в сообщении, потому что теперь это катастрофа : (
Ответ №1:
Ваш Label
ключ содержит следующий символ перед ним ufeff
(пробел нулевой ширины без разрыва, знак порядка байтов или СПЕЦИФИКАЦИЯ).
Правильный ключ для использования, таким образом, ufeffLabel
и не Label
, который вернет undefined
:
const label = record['ufeffLabel'];