欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Javascript雙重否定運(yùn)算的具體使用

 更新時(shí)間:2025年07月17日 10:47:28   作者:Mr.怪獸  
本文介紹了JavaScript中的雙位NOT運(yùn)算符,將非數(shù)字類型轉(zhuǎn)換為0,以及整數(shù)參數(shù)和Array.prototype.indexOf方法中的應(yīng)用,感興趣的可以了解一下

雙位  NOT(~~)

按位運(yùn)算符 ~~ 表示否定:

~~something;

 按位NOT運(yùn)算符(~)將獲取其操作數(shù),將其轉(zhuǎn)換為 32 位整數(shù),并將反轉(zhuǎn)每個(gè)位,例如:

00000000000000000000000000001001
...becomes
11111111111111111111111111110110

如果操作數(shù)是一個(gè)數(shù)字,并且它不是 NaN 或者 Infinity 那么~~具有將其四舍五入為零的效果(Math.ceil表示負(fù)數(shù),Math.floor表示正數(shù))。如果它不是數(shù)字,那么內(nèi)部函數(shù)會(huì)將其轉(zhuǎn)換為零。

以下是雙位 NOT 操作的一些示例:

~~null;      // => 0
~~undefined; // => 0
~~0;         // => 0
~~{};        // => 0
~~[];        // => 0
~~(1/0);     // => 0
~~false;     // => 0
~~true;      // => 1
~~1.2543;    // => 1
~~4.9;       // => 4
~~(-2.999);  // => -2

~~的地板功能(flooring )使其成為更好的選擇,如果您知道自己正在處理正數(shù)——它速度更快,占用的字符更少。雖然它的可讀性不太好,但我希望它能慢慢成為 JS 領(lǐng)域非常知名的技術(shù),這樣我們都可以使用它而不必?fù)?dān)心受到指責(zé)。Math.floor~~

這對(duì)于規(guī)范化您期望為整數(shù)的參數(shù)非常有用。以 MDC 建議提供給不支持的瀏覽器為例:

/*Array.prototype.indexOf = function...*/
var from = Number(arguments[1]) || 0;  
from = (from < 0)  
     ? Math.ceil(from)  
     : Math.floor(from);

/* 在去:~~ */

/*Array.prototype.indexOf = function...*/
var from = ~~arguments[1];

到此這篇關(guān)于Javascript雙重否定運(yùn)算的具體使用的文章就介紹到這了,更多相關(guān)Javascript雙重否定運(yùn)算內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

最新評(píng)論