Javascript 变量值不随变量而变化

Javascript 变量值不随变量而变化,javascript,jquery,object,concat,Javascript,Jquery,Object,Concat,事情是这样的。我已向concat对象声明了以下变量: var newObj = obj[property]; var fullObj = newObj[id]; 然后我将“fullObj”的值与另一个名为“Array”的obj的值进行匹配。我是这样做的: fullObj = Array; 然后“fullObj”获得新值,但原始对象(类似于“obj.property.id”)没有。有什么想法吗 编辑: 这就是函数 function updateData(obj, Array,

事情是这样的。我已向concat对象声明了以下变量:

    var newObj = obj[property];
    var fullObj = newObj[id];
然后我将“fullObj”的值与另一个名为“Array”的obj的值进行匹配。我是这样做的:

fullObj  = Array;
然后“fullObj”获得新值,但原始对象(类似于“obj.property.id”)没有。有什么想法吗

编辑:

这就是函数

function updateData(obj, Array, id, property) {
    var newObj = obj[property];
    var fullObj = newObj[id];

    fullObj = Array;
}
我要发回的属性是“obj”,以及它的所有内部元素(obj.property.id)

正如您所看到的,“fullObj”与最后一个对象构造是一样的。想象一下类似于“object.id[“0”]”的东西。所以想象一下“Array”的值是“object.id[“1”]”。我通过匹配它们来给“fullObj”这个值,但是原始对象不会得到它


我说得够清楚了吗?

问题是您正在为fullObj变量重新赋值。您可以像那样访问引用的对象,但不能更改它

不管怎样,我看不出你这样做有什么意义。您可以像这样直接指定值:

function updateData(obj, Array, id, property) {
    obj[property][id] = Array;
}

您将
fullObj
的引用更改为其他引用(
Array
)。
newObj[id]
的引用保持不变

范例

var a = [1];
var b = a;
b = [2];
console.log(a, b); // it logs [1] [2]

请提供更完整的代码。你目前对你正在做的事情的描述不清楚。