Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用动态值设置对象中的值_Javascript_Object - Fatal编程技术网

Javascript 使用动态值设置对象中的值

Javascript 使用动态值设置对象中的值,javascript,object,Javascript,Object,首先,这是我的代码: var lastUsedId = ''; var object = { element: lastElement() }; function lastElement() { return lastUsedId; } lastUsedId = 123; console.log(object); // returns `{element: ""}` and should `{element: 123}` 正如您所看到的,我已经用keyelement定义了

首先,这是我的代码:

var lastUsedId = '';
var object = {
    element: lastElement()
};

function lastElement() {
    return lastUsedId;
}

lastUsedId = 123;

console.log(object); // returns `{element: ""}` and should `{element: 123}`
正如您所看到的,我已经用key
element
定义了对象,它应该包含最后使用的元素的ID。问题是,我还不知道该ID,它还来打印结果。由于我的应用程序很强大,我无法更改像
object.element=123这样的值,所以不要发送这样的注释。对于这个问题,它的结构必须是这样的

我的问题是:我是否可以设置类似于函数的值,该函数返回的变量的内容后来发生了变化?也许这是一个愚蠢的问题,但当它不可能的时候,就说出来,我会尝试找到其他的方法

我可以设置value like函数吗?它返回带有 内容后来改变了

为什么不将该值仅保留为
函数

var obj = {
    element: lastElement
};
console.log( obj.element() ); //this will invoke the method to get the latest value
我可以设置value like函数吗?它返回带有 内容后来改变了

为什么不将该值仅保留为
函数

var obj = {
    element: lastElement
};
console.log( obj.element() ); //this will invoke the method to get the latest value

不确定这是您想要的,但您可以使用
getter
来实现:

var lastUsedId='';
变量对象={
获取元素(){
返回lastElement()
}
};
函数lastElement(){
返回上次使用的数据;
}
lastUsedId=123;
console.log(对象);
lastUsedId=456;

console.log(对象)
不确定这是您想要的,但您可以使用
getter
来实现:

var lastUsedId='';
变量对象={
获取元素(){
返回lastElement()
}
};
函数lastElement(){
返回上次使用的数据;
}
lastUsedId=123;
console.log(对象);
lastUsedId=456;

console.log(对象)也许,您需要检查更新的值。执行
lastElement
并使用更新的值创建一个新的
对象
的东西。也许,您需要检查更新的值。执行
lastElement
并使用更新的值创建一个新的
对象的东西。这也是我想要推荐的,但@gurvinder372比我更适合。我将此
对象
变量发送给需要字符串的外部插件,所以它使用类似于
obj.element
的元素,不需要调用。@如果是首次亮相,你应该按照Dekel的回答去做。我看到了,他做了我需要的。无论如何,谢谢。这也是我想推荐的,但是@gurvinder372比我强。我把这个
对象
变量发送给外部插件,该插件需要字符串,所以它使用像
obj.element
这样的元素,而不需要调用。@debute在这种情况下,你应该使用Dekel的答案。我看到了,他做了我需要的。不管怎样,谢谢。太好了!谢谢,这正是我想要的。太好了!谢谢,这正是我想要的。