"property" 如何在不使用括号的情况下像调用方法一样被调用
how a "property" can be call like it's a method without using parenthesis
有了库 'chai',我可以这样做:
expect(display).to.be.true;
如果显示为假,则测试失败,如果显示为真,则可以。
我的问题是,lib chai 如何知道“.true”属性 已被使用?没有括号,它甚至不是一种方法!这个语法的名称是什么?我怎样才能申报类似的东西?
这个库还有一个.false,一个.empty 属性,谁能用,为什么语法一样:
expect([]).to.be.empty;//OK
expect([1]).to.be.empty;//test fail
expect(false).to.be.false;//OK
expect(true).to.be.false;//test fail
对象可以有 "getter" and "setter" properties。它们分别调用您在访问或更新时提供的功能。
var o = {
get test() { console.log("foo!") }
}
o.test;
这是 ECMAScript 5 的一项功能,在现代实现中广泛可用。
有了库 'chai',我可以这样做:
expect(display).to.be.true;
如果显示为假,则测试失败,如果显示为真,则可以。
我的问题是,lib chai 如何知道“.true”属性 已被使用?没有括号,它甚至不是一种方法!这个语法的名称是什么?我怎样才能申报类似的东西?
这个库还有一个.false,一个.empty 属性,谁能用,为什么语法一样:
expect([]).to.be.empty;//OK
expect([1]).to.be.empty;//test fail
expect(false).to.be.false;//OK
expect(true).to.be.false;//test fail
对象可以有 "getter" and "setter" properties。它们分别调用您在访问或更新时提供的功能。
var o = {
get test() { console.log("foo!") }
}
o.test;
这是 ECMAScript 5 的一项功能,在现代实现中广泛可用。