如何在javascript中告诉包含对象?

时间:2012-10-28 20:44:52

标签: javascript json

我有JSON数据,我想知道是否有办法确定嵌套对象的父对象。例如,采用以下结构:

Vehicles[]
 ForSaleCars[]
  Car{}
   Make
   Model
   Year
 SoldCars[]
  Car{}
   Make
   Model
   Year

假设这是var json = ;,并且已经填充了一些数据。很容易访问ForSaleCars数组中的第二辆汽车,如下所示:

var secondCar = json.Vehicles.ForSaleCars[1];

此时,来自secondCar变量的完全,是否可以告诉它来自ForSaleCars而不是SoldCars

我问的原因是我正在递归地遍历一个json对象图,看看对象有哪个而没有跟踪会很好。

3 个答案:

答案 0 :(得分:5)

  

此时,仅使用secondCar变量,是否可以告诉它来自ForSaleCars而不是SoldCars?

没有。 JavaScript不会自动跟踪从中复制引用的位置。

答案 1 :(得分:1)

这是不可能的。你可以改为维护哈希。

答案 2 :(得分:1)

不,您是从父级复制的,JavaScript不会跟踪父级引用的用途。如果您希望能够跟踪它,则需要添加引用:

var secondCar = json.Vehicles.ForSaleCars[1];
secondCar.parent = json.Vehicles;