[英]key-value pair undefined in javascript
由於某種原因,我有一個像這樣的字符串:
"id: 123, title: something, category: science, ... "
為了制作一個包含鍵值對的javascript對象,我編寫了以下方法:
function stringToMap(stringToCut){
var map = {};
var listOfPairs = stringToCut.split(",");
for(var i = 0; i < listOfPairs.length; i++){
var pair = listOfPairs[i].split(":");
map[pair[0]] = pair[1];
}
return map;
}
請務必使用圓點而不是[]括號來訪問它。 在chrome調試模式下,我看到了預期的對象,但是當我想訪問它的元素之一時,例如:
console.log(obj.title);
我不確定...
我究竟做錯了什么?
這是因為您的鍵名中有一個空格:
console.log(obj[" title"]); // "something"
為了解決這個問題,改變你先拆拆就", "
而不是僅僅","
:
var listOfPairs = stringToCut.split(", ");
作為進一步的修正,你還需要改變你的第二分割拆就": "
而不僅僅是":"
,否則所有的值將會以空格開頭。
var pair = listOfPairs[i].split(": ");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.