摘要:在這種情況下,表示沒有值。因此,不應(yīng)該是的實(shí)例。事實(shí)是,將浮點(diǎn)數(shù)存儲(chǔ)為二進(jìn)制。比小返回的事實(shí)看起來是錯(cuò)誤的,但實(shí)際上它是正確的。沒有整數(shù)數(shù)據(jù)類型在中,沒有整數(shù)數(shù)據(jù)類型。函數(shù)自動(dòng)類型轉(zhuǎn)換函數(shù)自動(dòng)將值轉(zhuǎn)換為字符串,這就會(huì)導(dǎo)致奇怪的事情發(fā)生。
為了保證的可讀性,本文采用意譯而非直譯。
想閱讀更多優(yōu)質(zhì)文章請(qǐng)猛戳GitHub博客,一年百來篇優(yōu)質(zhì)文章等著你!
使用 JS 有很多有趣的地方。盡管工程師們每天都在與之打交道,但仍有一些語言沒有被開發(fā)出來。本廣將介紹一些你可能想不到的JS特性。
NaN 是一個(gè) number 類型NaN是一個(gè) number 類型。 而且,NaN 不等于它自己。 實(shí)際上NaN不等于任何東西,驗(yàn)證一個(gè)變量是否是 NaN 可以使用 isNaN() 方法來判斷。
> typeof(NaN) "number" > NaN === NaN falsenull 是一個(gè)對(duì)象
null是一個(gè)對(duì)象。 聽起來奇怪! 對(duì)? 但這是事實(shí)。
> typeof(null) "object"
在這種情況下,null表示沒有值。因此,null不應(yīng)該是Object的實(shí)例。
> null instanceof Object falseundefined 可以被定義
undefined不是 JS 中的保留關(guān)鍵字, 你可以為其指定值也不會(huì)報(bào)錯(cuò),如果聲明一個(gè)變量沒有賦值,默認(rèn)為 undefined
> var some_var; undefined > some_var == undefined true > undefined = "i am undefined"0.1 + 0.2 不等于 to 0.3
在JavaScript中,0.1 +0.2 == 0.3返回false。 事實(shí)是,javascript 將浮點(diǎn)數(shù)存儲(chǔ)為二進(jìn)制。
> 0.1 + 0.2 0.30000000000000004 > 0.1 + 0.2 == 0.3 falseMath.max() 比 Math.min() 小
Math.max() > Math.min()返回false的事實(shí)看起來是錯(cuò)誤的,但實(shí)際上它是正確的。
如果沒有參數(shù)傳給min()或max(),那么它將返回以下值。
> Math.max() -Infinity > Math.min() Infinity018 - 045 = -19
在JavaScript中,前綴0會(huì)把任何數(shù)字轉(zhuǎn)換成八進(jìn)制。但是,八進(jìn)制中不使用8,任何包含8的數(shù)字都將被無聲地轉(zhuǎn)換為常規(guī)的十進(jìn)制數(shù)字。
> 018 - 045 -19
因此,018-017實(shí)際上等于十進(jìn)制表達(dá)式18-37,因?yàn)?b>045是八進(jìn)制,但018是十進(jìn)制。
函數(shù)可以自執(zhí)行只需創(chuàng)建一個(gè)函數(shù),并在調(diào)用其他函數(shù)時(shí)立即調(diào)用它,并使用 () 語法
> (function() { console.log("I am self executing"); })(); I am self executing括號(hào)的位置問題
`return` 語句后面沒有東西的時(shí)候它什么都不返回。 實(shí)際上,JS 后面 `return` 添加一個(gè) `;`。 > function foo() { return { foo: "bar" } } > foo(); undefined > function foo() { return { foo: "bar" } } > foo(); {foo: "bar"}沒有整數(shù)數(shù)據(jù)類型
在 JS 中,沒有int(整數(shù))數(shù)據(jù)類型。 所有數(shù)字均為 Number 類型。 實(shí)際上它將int數(shù)的浮點(diǎn)值存儲(chǔ)在內(nèi)存上。
sort() 函數(shù)自動(dòng)類型轉(zhuǎn)換sort() 函數(shù)自動(dòng)將值轉(zhuǎn)換為字符串,這就會(huì)導(dǎo)致奇怪的事情發(fā)生。
> [1,5,20,10].sort() (4) [1, 10, 20, 5]
但是,它可以通過比較來解決:
> [1,5,20,10].sort(function(a, b){return a - b}); (4) [1, 10, 20, 5]數(shù)組和對(duì)象的和
> !+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![] 9 > {} + [] 0 > [] + {} "[object Object]" > [] + [] "" > {} + {} "[object Object][object Object]" > {} + [] == [] + {} true交流
干貨系列文章匯總?cè)缦拢X得不錯(cuò)點(diǎn)個(gè)Star,歡迎 加群 互相學(xué)習(xí)。
https://github.com/qq44924588...
我是小智,公眾號(hào)「大遷世界」作者,對(duì)前端技術(shù)保持學(xué)習(xí)愛好者。我會(huì)經(jīng)常分享自己所學(xué)所看的干貨,在進(jìn)階的路上,共勉!
關(guān)注公眾號(hào),后臺(tái)回復(fù)福利,即可看到福利,你懂的。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/105926.html
摘要:與類選擇器最常一起出現(xiàn)的是選擇器,不過這個(gè)適用于比較高級(jí)的場合,諸如用控制的時(shí)候就需要用到選擇器。在線查看一步步搭建物聯(lián)網(wǎng)系統(tǒng)圖靈電子書版一步步搭建物聯(lián)網(wǎng)系統(tǒng) 無處不在的CSS 或許你覺得CSS一點(diǎn)兒也不重要,而事實(shí)上,如果說HTML是建筑的框架,CSS就是房子的裝修。那么Javascript呢,我聽到的最有趣的說法是小三——還是先讓我們回到代碼上來吧。 CSS 下面就是我們之前...
摘要:與類選擇器最常一起出現(xiàn)的是選擇器,不過這個(gè)適用于比較高級(jí)的場合,諸如用控制的時(shí)候就需要用到選擇器。在線查看一步步搭建物聯(lián)網(wǎng)系統(tǒng)圖靈電子書版一步步搭建物聯(lián)網(wǎng)系統(tǒng) 無處不在的CSS 或許你覺得CSS一點(diǎn)兒也不重要,而事實(shí)上,如果說HTML是建筑的框架,CSS就是房子的裝修。那么Javascript呢,我聽到的最有趣的說法是小三——還是先讓我們回到代碼上來吧。 CSS 下面就是我們之前...
摘要:原文地址原文作者譯文出自掘金翻譯計(jì)劃譯者校對(duì)者統(tǒng)一樣式語言在過去幾年中,我們見證了的興起,尤其是在社區(qū)。根本上來說,純粹用于只是一個(gè)命名規(guī)范,它要求樣式的類名要遵守的模式。 原文地址:A Unified Styling Language 原文作者:Mark Dalgleish 譯文出自:掘金翻譯計(jì)劃 譯者:ZhangFe 校對(duì)者:JackGit,yifili09 統(tǒng)一樣式語言 在過...
摘要:谷歌和有兩個(gè)最受歡迎的編寫風(fēng)格指南。有趣的是,谷歌和不同意這個(gè)規(guī)則這是的規(guī)范。谷歌只是眾多科技巨頭之一,這些只是推薦。也就是說,看看谷歌這樣的公司提出的風(fēng)格建議是很有趣的,這家公司雇傭了很多才華橫溢的人,他們花了很多時(shí)間編寫優(yōu)秀的代碼。 showImg(https://segmentfault.com/img/bV7pRb?w=2000&h=800); 文中的我指原文的作者 想閱讀更多...
閱讀 3454·2023-04-26 01:45
閱讀 2233·2021-11-23 09:51
閱讀 3644·2021-10-18 13:29
閱讀 3442·2021-09-07 10:12
閱讀 705·2021-08-27 16:24
閱讀 1775·2019-08-30 15:44
閱讀 2200·2019-08-30 15:43
閱讀 2956·2019-08-30 13:11