簡體   English   中英

小於和大於10

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM