Javascript 在返回字符串的getter上具有隐藏属性

Javascript 在返回字符串的getter上具有隐藏属性,javascript,Javascript,在ES6中,是否可以让getter返回字符串,但在请求时返回属性 例如: myForm.title // 'The foo of the bar, was there.' myForm.title.valid // true 我记得我在某处看到过类似的东西,jQuery的$是一个函数,但是你可以调用它的方法。你可以使用一个带有toString方法的对象 var myForm={ 标题:{ 有效:对, toString:function(){return'条的foo,在那里。;} } };

在ES6中,是否可以让getter返回字符串,但在请求时返回属性

例如:

myForm.title
// 'The foo of the bar, was there.'

myForm.title.valid
// true

我记得我在某处看到过类似的东西,jQuery的
$
是一个函数,但是你可以调用它的方法。

你可以使用一个带有
toString
方法的对象

var myForm={
标题:{
有效:对,
toString:function(){return'条的foo,在那里。;}
}
};
console.log(myForm.title+'');//强制使用toString的变通方法

console.log(myForm.title.valid)
nope。。。。。属性不能同时是字符串和字符串object@adeneo即使它是一个获得者?从技术上讲,getter不是一个静态属性。getter也可以返回,这取决于一个条件,不幸的是,定义了类似于
get title(){}
的内容,您不知道它是否被称为“单独”或链接在
上。valid
属性,因此无法确定返回什么。@adeneo,也许ES7中会出现类似的情况?这真的很酷。下面是一个例子->这是一个巧妙的技巧,但是你也可以使用
form.title.string
并使用该字符串的一个属性,避免整个Scheback。通常,强制使用字符串是不必要的,但是
console.log
方法可以在堆栈片段中使用。我想这取决于用例,如果你把它插入某个地方,你就会得到
[Object,Object]
它当然会像预期的那样工作