Javascript 是否可以重新定义的基本对象值以返回内部道具';s值多少?

Javascript 是否可以重新定义的基本对象值以返回内部道具';s值多少?,javascript,object,javascript-objects,Javascript,Object,Javascript Objects,问题: 是否可以重新定义基本对象值以返回内部道具 让obj={ x:1, y:2 } obj//2当然可以定义一个返回成员的valueOf方法,但是您仍然需要以某种方式调用该方法——要么在转换中隐式调用,要么显式调用valueOf不会神奇地使obj本身变成另一回事 const obj={ x:1, y:2, 价值(){ 把这个还给我; } }; 控制台日志(obj); 控制台日志(obj.x,obj.y) console.log(obj.valueOf()) 控制台日志(obj+5) cons

问题:

是否可以重新定义基本对象值以返回内部道具

让obj={
x:1,
y:2
}

obj//2当然可以定义一个返回成员的
valueOf
方法,但是您仍然需要以某种方式调用该方法——要么在转换中隐式调用,要么显式调用
valueOf
不会神奇地使
obj
本身变成另一回事

const obj={
x:1,
y:2,
价值(){
把这个还给我;
}
};
控制台日志(obj);
控制台日志(obj.x,obj.y)
console.log(obj.valueOf())
控制台日志(obj+5)

console.log(“y:+obj)
valueOf
toString
toJSON
可用于处理某些(但不是全部)情况:

var obj={a:1,
b:2,
c:3,
toJSON:function(){返回this.a},
valueOf:function(){返回this.b},
toString:function(){返回this.c}

console.log(obj,+obj,`${obj}`)
如何从just
obj
获取
2
?@zer00ne,因为它返回
obj.y
的值没有冒犯,但你的问题对我来说没有意义。你在寻找什么样的“valueOf”和巫婆元素?@MatthewHarwood only
obj.y
返回2如果你能做到这一点,它的用例是什么?或者你想解决什么问题?
let obj = {
  x: 1,
  y: 2
}

obj     // 2 <- the value of obj.y
obj.x   // 1
obj.y   // 2