2016-11-16 60 views
-1
{ 
    "obj": { 
     "node1": { 
      "child1": "value1" 
     }, 
     "node , 2": { 
      "child2": "value2" 
     } 
    } 
} 

上面是我的代碼片段(JSON)。當我想要「value1」時,我寫「obj.node1.child1」。但是當我想獲得「value2」時,我應該寫「obj.node,2.child2」,但是這種形式是不正確的。問題在於白色符號 - >空格。從JSON獲取值 - 節點有空間

+4

使用括號符號 - 'OBJ [ '節點,2'] child2'。 –

+0

FWIW,你的問題與JSON無關。 JavaScript數組/對象來自哪裏並不重要。 –

回答

0

使用括號通過將標識符作爲字符串,而不是訪問對象屬性:

var data = { 
 
    "obj": { 
 
    "node1": { 
 
     "child1": "value1" 
 
    }, 
 
    "node , 2": { 
 
     "child2": "value2" 
 
    } 
 
    } 
 
} 
 

 
console.log(data.obj['node , 2'].child2); // "value2"