Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.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-对象属性作为函数结果,如Array.length_Javascript_Object - Fatal编程技术网

JavaScript-对象属性作为函数结果,如Array.length

JavaScript-对象属性作为函数结果,如Array.length,javascript,object,Javascript,Object,我想创建属性工作作为函数的结果,如Array.length或VideoElement.currentTime。 但我不想在使用对象时像函数调用一样使用它 例如: var obj = { now : /* ??? */ } console.log(obj.now) Result : 2020-04-07 10:03:21 // 1 hours later console.log(obj.now) Result : 2020-04-07 11:03:21 // I don't want

我想创建属性工作作为函数的结果,如Array.length或VideoElement.currentTime。 但我不想在使用对象时像函数调用一样使用它

例如:

var obj = {
   now : /* ??? */
}


console.log(obj.now)
Result : 2020-04-07 10:03:21

// 1 hours later
console.log(obj.now)
Result : 2020-04-07 11:03:21

// I don't want to implement like below:
console.log( obj.now() )


如何实现它?

将它变成一个getter而不是一个普通函数:

const obj={
快走{
返回新日期().toString();
}
};
console.log(obj.now);
设置超时(()=>{
console.log(obj.now);

}, 1000);将其转换为getter而不是普通函数:

const obj={
快走{
返回新日期().toString();
}
};
console.log(obj.now);
设置超时(()=>{
console.log(obj.now);
}, 1000);您可以使用以下方法执行此操作:

const obj={
快走{
返回日期。现在()
}
}
console.log(obj.now)
//日志:15870XXXXXXXX
您可以使用以下方法执行此操作:

const obj={
快走{
返回日期。现在()
}
}
console.log(obj.now)

//日志:15870XXXXXXXX
存储函数结果,然后使用:

Object.defineProperty() 
我需要更多关于你想做什么的信息


存储函数结果,然后使用:

Object.defineProperty() 
我需要更多关于你想做什么的信息