[英]Less than and greater than 10
我正在進行隨機代碼挑戰,我無法弄清楚我的生活將如何成為可能
function(obj) {
if ( (obj < 10) && (obj > 10) ) {
return true;
}
}
我嘗試過的事情是設置一個間隔來將變量更改為0ms(最終成為瀏覽器默認值),使obj成為一個生命函數,每次使用時都會遞增一個全局變量,以及一大堆其他看似不太有用的方法。 這里有任何想法,或指出一些我不知道的明顯事物嗎?
線索在變量名稱“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() ) );
上面的對象的toValue
在第一次被調用時返回9(9 <10),從那時開始返回11(11> 10)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.