最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解JavaScript中|單豎杠運算符的使用方法

 更新時間:2016年05月23日 16:47:44   作者:Aaron  
JavaScript中|單豎杠通常被用來對浮點型數(shù)字進(jìn)行取證,這里同時也介紹了單豎杠的運算規(guī)則,下面我們就來詳解JavaScript中|單豎杠的使用方法

js運算符單豎杠“|”的作用

在js整數(shù)操作的時候,相當(dāng)于去除小數(shù)點,parseInt。在正數(shù)的時候相當(dāng)于Math.floor(),負(fù)數(shù)的時候相當(dāng)于Math.ceil() 注:

1. Math.ceil()用作向上取整。
2. Math.floor()用作向下取整。
3. Math.round() 我們數(shù)學(xué)中常用到的四舍五入取整。

console.log(0.6|0)//0
console.log(1.1|0)//1
console.log(3.65555|0)//3
console.log(5.99999|0)//5
console.log(-7.777|0)//-7

注:除了Math的三個方法處理數(shù)字,我們還經(jīng)常用parseInt()、parseFloat()、toFixed()與toPrecision() 等等。 簡單解釋:

toFixed方法用法如下:

100.456001.toFixed(2); //100.47

100.456001.toFixed(3); //100.456

Number.prototype.toFixed.call(100.456001,2); //100.47

缺點:用之后就會變成字符串。

toPrecision用法如下:

99.456001.toPrecision(5); //99.456

100.456001.toPrecision(5); //100.46

Number.prototype.toPrecision.call(10.456001,5); //10.456

單豎杠的運算規(guī)則

看了上面的例子,大體知道單豎杠可以進(jìn)行取整運算,就是只保留正數(shù)部分,小數(shù)部分通過拿掉,但是“|0”,又是如何進(jìn)行運算的呢,為什么能“|0”能達(dá)到取整的目的呢?單豎杠不是0有會是多少呢?

帶著這些問題,我們看下面例子:

console.log(3|4); //7
console.log(4|4);//4
console.log(8|3);//11
console.log(5.3|4.1);//5
console.log(9|3455);//3455

好吧,我在這里公布答案吧。其實單豎杠“|”就是轉(zhuǎn)換為2進(jìn)制之后相加得到的結(jié)果。例如我們拿簡單的舉例:

復(fù)制代碼 代碼如下:
3|4

轉(zhuǎn)換為二進(jìn)制之后011|100  相加得到111=7

復(fù)制代碼 代碼如下:
4|4

轉(zhuǎn)換為二進(jìn)制之后100 |100  相加得到100=4

復(fù)制代碼 代碼如下:
8|3

轉(zhuǎn)換為二進(jìn)制之后1000 |011  相加得到1011=11

相關(guān)文章

  • 深入理解JavaScript系列(41):設(shè)計模式之模板方法詳解

    深入理解JavaScript系列(41):設(shè)計模式之模板方法詳解

    這篇文章主要介紹了深入理解JavaScript系列(41):設(shè)計模式之模板方法詳解,模板方法(TemplateMethod)定義了一個操作中的算法的骨架,而將一些步驟延遲到子類中,模板方法使得子類可以不改變一個算法的結(jié)構(gòu)即可重定義該算法的某些特定步驟,需要的朋友可以參考下
    2015-03-03
  • JS聲明變量背后的編譯原理剖析

    JS聲明變量背后的編譯原理剖析

    只要是寫過點JS代碼,很簡單一個var 就完事了。那對于JS編譯器背后它又發(fā)生了什么呢?那就一步步通過代碼來講起,需要了解的朋友研究下哦
    2012-12-12
  • Document 對象的常用方法

    Document 對象的常用方法

    通過元素的ID訪問元素,這是DOM一個基礎(chǔ)的訪問頁面元素的方法,我們要經(jīng)常用到它.
    2009-07-07
  • javascript中判斷一個值是否在數(shù)組中并沒有直接使用

    javascript中判斷一個值是否在數(shù)組中并沒有直接使用

    在JS中要判斷一個值是否在數(shù)組中并沒有函數(shù)直接使用,如PHP中就有in_array()這個函數(shù),可以寫一個類似in_array()函數(shù)功能的方法
    2012-12-12
  • javascript實現(xiàn)計算器功能詳解流程

    javascript實現(xiàn)計算器功能詳解流程

    這篇文章主要為大家詳細(xì)介紹了JavaScript實現(xiàn)簡單計算器小功能,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實戰(zhàn)中才能獲得能力的提升,大家可以在本篇實例中查缺補漏,提升水平
    2021-11-11
  • javascript實現(xiàn)的網(wǎng)頁局布刷新效果

    javascript實現(xiàn)的網(wǎng)頁局布刷新效果

    AJAX,近幾年火熱起來的一個詞.什么是ajax本文就不介紹了,其實,AJAX也就是 javascript腳本的應(yīng)用.全拼是:AsynchronousJavaScript+XML .現(xiàn)在我們就來看一個用javascript實現(xiàn)的局部刷新
    2008-12-12
  • 你真的了解JavaScript的作用域與閉包嗎

    你真的了解JavaScript的作用域與閉包嗎

    這篇文章主要為大家詳細(xì)介紹了JavaScript作用域與閉包,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • ES5學(xué)習(xí)教程之Array對象

    ES5學(xué)習(xí)教程之Array對象

    這篇文章主要給大家介紹了ES5中新增的Array對象的相關(guān)資料,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-04-04
  • 初學(xué)JS的的小例子 javascript replace高亮替換

    初學(xué)JS的的小例子 javascript replace高亮替換

    初學(xué)JS的的小例子 javascript replace高亮替換...
    2007-12-12
  • Js中sort()方法的用法

    Js中sort()方法的用法

    Js中sort()方法的用法,需要的朋友可以參考下。
    2006-11-11

最新評論

平江县| 北海市| 普兰县| 大英县| 泗水县| 会同县| 青冈县| 沁阳市| 定安县| 吉木萨尔县| 淄博市| 中江县| 惠水县| 蒙山县| 定州市| 密云县| 渭南市| 贡觉县| 贵溪市| 通辽市| 天津市| 黑龙江省| 济南市| 安仁县| 庄浪县| 岳池县| 团风县| 临汾市| 永德县| 扎鲁特旗| 道孚县| 二手房| 平顶山市| 屏东县| 武宁县| 晴隆县| 磐石市| 石首市| 武鸣县| 永登县| 新民市|