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

JavaScript parseInt0.0000005打印5原理解析

 更新時(shí)間:2022年07月23日 11:43:45   作者:nanfeiyan  
這篇文章主要為大家介紹了JavaScript parseInt0.0000005打印5原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

最近,我在開(kāi)發(fā)項(xiàng)目時(shí)遇到了一個(gè)奇怪的問(wèn)題,parseInt (0.0000005) === 5??。通常,輸出 0 才是正確的,但為什么是 5?讓我們一起探討這個(gè)問(wèn)題。

1.什么時(shí)候使用parseInt?

首先,您通常什么時(shí)候使用parseInt?大多數(shù)時(shí)候,我們使用它來(lái)解析字符串并返回它的整數(shù)部分。帶著這個(gè)問(wèn)題,我們來(lái)看看parseInt方法。

2.關(guān)于parseInt的一些事情

根據(jù) MDN文檔,“parseInt(string, radix) 函數(shù)解析字符串參數(shù)并返回指定基數(shù)(數(shù)學(xué)數(shù)字系統(tǒng)中的基數(shù))的整數(shù)。”

語(yǔ)法

parseInt(string)
parseInt(string, radix)

例子

parseInt('0.5') // 0
parseInt('0.5') // 0
parseInt('0.05') // 0
parseInt('0.005') // 0
parseInt('0.0005') // 0
parseInt('0.00005') // 0
parseInt('0.000005') // 0
parseInt('015') // 15
parseInt('015', 8) // 13
parseInt('15px', 10) // 15

3. parseInt 是如何轉(zhuǎn)換數(shù)字的?

當(dāng)parseInt的第一個(gè)參數(shù)是一個(gè)數(shù)字時(shí),它是如何解析的?

事實(shí)上在這里: parseInt(0.0000005) === 5

3.1 第一步?將數(shù)字轉(zhuǎn)換為字符串

讓我們使用 String 函數(shù)檢查基于字符串的值,看看每個(gè)值的輸出是什么

String(0.5);      // => '0.5'
String(0.05);     // => '0.05'
String(0.005);    // => '0.005'
String(0.0005);   // => '0.0005' 
String(0.00005);  // => '0.00005'
String(0.000005); // => '0.000005'
String(0.0000005); // => '5e-7' 請(qǐng)注意這里

3.2 第二步,做舍入操作

當(dāng)我們使用 parseInt(0.0000005) 時(shí),它實(shí)際等于 parseInt('5e-7')

parseInt 只能將字符串的前導(dǎo)部分解釋為整數(shù)值;它忽略任何不能被解釋為整數(shù)表示法的一部分的代碼單元,并且沒(méi)有給出任何這樣的代碼單元被忽略的指示。

parseInt(0.0000005)
parseInt('5e-7') // 5

最后,答案將返回 5,只是因?yàn)樗俏ㄒ灰粋€(gè)在非字符 e 之前是數(shù)字的字符,所以其余的 e-7 將被丟棄。”

4. 如何安全獲取浮點(diǎn)數(shù)的整數(shù)部分?

推薦使用以下 Math.floor() 函數(shù)

Math.floor(0.5);      // => 0
Math.floor(0.05);     // => 0
Math.floor(0.005);    // => 0
Math.floor(0.0005);   // => 0
Math.floor(0.00005);  // => 0
Math.floor(0.000005); // => 0
Math.floor(0.0000005); // => 0

5. 舉一反三

現(xiàn)在,你能解釋一下為什么 parseInt(99999999999999999999999999) 等于 1 嗎?

以上就是JavaScript parseInt0.0000005打印5原理解析的詳細(xì)內(nèi)容,更多關(guān)于JavaScript parseInt打印原理的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 編程式安裝依賴install-pkg源碼解析

    編程式安裝依賴install-pkg源碼解析

    這篇文章主要為大家介紹了編程式安裝依賴install-pkg源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • 微信小程序 slider的簡(jiǎn)單實(shí)例

    微信小程序 slider的簡(jiǎn)單實(shí)例

    這篇文章主要介紹了微信小程序 slider的簡(jiǎn)單實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • 微信小程序下拉刷新界面的實(shí)現(xiàn)

    微信小程序下拉刷新界面的實(shí)現(xiàn)

    這篇文章主要介紹了微信小程序下拉刷新界面的實(shí)現(xiàn)的相關(guān)資料,希望通過(guò)本文能幫助到大家實(shí)現(xiàn)這樣的功能,需要的朋友可以參考下
    2017-09-09
  • JavaScript 原型與原型鏈詳情

    JavaScript 原型與原型鏈詳情

    這篇文章主要介紹了JavaScript 原型與原型鏈,JavaScript常被描述為一種基于原型的語(yǔ)言,對(duì)象以其原型為模板、從原型繼承屬性和放法。原型對(duì)象也可能擁有原型,并從中繼承屬性和方法,一層一層以此類推。這種關(guān)系常被稱為原型鏈,帶著簡(jiǎn)單的了解看看下文內(nèi)容具體介紹吧
    2021-10-10
  • 微前端qiankun改造日漸龐大的項(xiàng)目教程

    微前端qiankun改造日漸龐大的項(xiàng)目教程

    這篇文章主要為大家介紹了微前端qiankun改造日漸龐大的項(xiàng)目教程示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • JS中 querySelector 與 getElementById 方法區(qū)別

    JS中 querySelector 與 getElementById 方法區(qū)別

    這篇文章主要介紹了JavaScript中 querySelector 與 getElementById 方法與區(qū)別,圍繞querySelector 與 getElementById 的相關(guān)資料展開(kāi)文章內(nèi)容,需要的朋友可以參考一下
    2021-10-10
  • sessionStorage多Tab標(biāo)簽頁(yè)數(shù)據(jù)共享問(wèn)題分析

    sessionStorage多Tab標(biāo)簽頁(yè)數(shù)據(jù)共享問(wèn)題分析

    這篇文章主要為大家介紹了sessionStorage多Tab標(biāo)簽頁(yè)數(shù)據(jù)共享問(wèn)題分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • 關(guān)于前端JavaScript ES6詳情

    關(guān)于前端JavaScript ES6詳情

    這篇文章主要介紹了關(guān)于前端JavaScript中的ES6,ES6是一個(gè)泛指,含義是 5.1 版以后的 JavaScript 的下一代標(biāo)準(zhǔn),涵蓋了 ES2015、ES2016、ES2017語(yǔ)法標(biāo)準(zhǔn),ES6新特性目前只有在一些較新版本瀏覽器得到支持,老版本瀏覽器里面運(yùn)行我們需要將ES6轉(zhuǎn)換為ES5
    2021-10-10
  • 詳解無(wú)界微前端是如何渲染子應(yīng)用的demo解析

    詳解無(wú)界微前端是如何渲染子應(yīng)用的demo解析

    這篇文章主要為大家介紹了詳解無(wú)界微前端是如何渲染子應(yīng)用demo解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • JavaScript深拷貝方法structuredClone使用

    JavaScript深拷貝方法structuredClone使用

    這篇文章主要為大家介紹了JavaScript深拷貝方法structuredClone使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02

最新評(píng)論

长子县| 彭山县| 武威市| 招远市| 万盛区| 庄河市| 越西县| 舟曲县| 广南县| 科尔| 宜州市| 海城市| 蓝山县| 运城市| 桂阳县| 岳池县| 延寿县| 高雄县| 南阳市| 清丰县| 绵竹市| 五家渠市| 泰和县| 宝应县| 辉南县| 永平县| 和顺县| 高雄县| 景东| 青龙| 凭祥市| 磐安县| 西宁市| 威信县| 潮安县| 花莲县| 长沙县| 娄烦县| 龙州县| 锡林浩特市| 雅安市|