2012-04-27 65 views
0

我有一个对象,里面的对象是更多的对象。我想获得这些对象的价值。谢谢!如何获取javascript对象的值?

 foreach($query as $row){ 
     $vehicles[$row->deviceID] = Array(
      'description' => $row->description, 
      'deviceID' => $row->deviceID 
     ); 
     } 

然后我将它传递给视图并将其存储到全局JavaScript变量。

 var vehicleList = <?php echo $vehicleList; ?>; 

,这里是我的console.log的输出,如果我在控制台登录铬键入vehicleList:

vehicleList 

>Object 
    >11292: Object 
    description: "Bus 1" 
    >11293: Object 
    description: "Bus 2" 
    >11294: Object 
    description: "Bus 1" 

我想要得到的值是描述。 也可以将另一个值存储到对象11292?如果是,如何?

谢谢!

+0

你可以发布创建对象的脚本吗? – philwinkle 2012-04-27 03:20:19

+0

我从控制器创建对象并将它传递给javascript。 $ vehicles [$ row-> deviceID] = Array( 'description'=> $ row-> description, ); 然后我将它传递给javascript – jovenrp 2012-04-27 03:22:39

回答

0
console.log(vehicleList["11292"]); 
+0

谢谢!你能告诉我如何为对象添加额外的值吗?我可以通过在javascript vehicleList [this.id]中使用此值来获取值。再次感谢! – jovenrp 2012-04-27 03:37:05

+0

@jovenrp:只需做一些事情,比如'vehicleList [“myProperty”] = someVariable',你就开始了! – 2012-04-27 03:39:05

+0

ooooooooohhhhhh!该死的!即时通讯使用$ .extend函数。哈哈哈!我没有注意到!哈哈哈谢谢! – jovenrp 2012-04-27 03:57:00

0

要访问对象的属性,请使用语法object.property。示例包括myArray.length,document.body,window.name等。

但是,在这种情况下,属性名称是数字(更具体地说,它们以数字开头 - 可以在中间有数字),所以您需要使用[]表示法。这与.表示法一样有效,但属性名称以字符串形式给出。示例:object["property"]myArray["length"]document["body"]window["name"]

+0

谢谢!你能告诉我如何为对象添加额外的值吗? 我可以通过在javascript vehicleList [this.id]中使用此值来获取值。再次感谢! – jovenrp 2012-04-27 03:36:40