我正在进行随机代码挑战,我无法弄清楚我的生活将如何成为可能
function(obj) {
if ( (obj < 10) && (obj > 10) ) {
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
我尝试过的事情是设置一个间隔来将变量更改为0ms(最终成为浏览器默认值),使obj成为一个生命函数,每次使用它时都会递增一个全局变量,以及一大堆其他看似不太有用的方法.这里有任何想法,或指出一些我不知道的明显事物吗?
JJJ*_*JJJ 15
线索在变量名称"obj"中.比较对象时,valueOf()会调用它们的方法.如果我们提供的valueOf方法每次都返回一个不同的值:
function test(obj) {
if ( (obj < 10) && (obj > 10) ) {
return true;
}
}
var Obj = function() {
var flag = false;
this.valueOf = function() {
if( flag ) {
return 11;
}
flag = true;
return 9;
}
}
console.log( test( new Obj() ) );Run Code Online (Sandbox Code Playgroud)
上面的对象toValue在第一次调用时返回9(9 <10),从那时起返回11(11> 10).
| 归档时间: |
|
| 查看次数: |
1052 次 |
| 最近记录: |