摘要:忽然在下班的地鐵上想起來兩個的小問題,有個還和之前的吹過牛,拿出來正好說一下吧。所以我想起來之前在上不用分號的建議是值得商榷的。
最近好像有點沒有之前開心,換了公司但是沒有以前的活力了,好像記得之前每天上班下班都挺開心的,可能主要是之前的工作氛圍真的不錯吧,雖然技術真的不咋的。忽然在下班的地鐵上想起來兩個JavaScript的小問題,有個還和之前的leader吹過牛,拿出來正好說一下吧。
function fn1(){ return { name: "javascript" }; } function fn2(){ return { name: "javascript" }; } var obj1 = fn1(); var obj2 = fn2(); console.log(obj1); console.log(obj2);
上面兩個例子看起來幾乎沒有什么不同,但是實質(zhì)上確實不同的,第一個輸出會顯示object類型的數(shù)據(jù),但是第二個卻會顯示undefined,第一個非常顯而易見,那第二個為什么呢,其實JavaScript是不需要分號這個東西的,所以第二個函數(shù)其實會被解析成
function fn2(){ return ; { name: "javascript" }; }
所以實質(zhì)上函數(shù)返回的是一個undefined。
還有一個挺好玩的例子,例如:
var func = function(){ return 42; } (function(){ console.log("a"); })();
上面這個例子其實會語法錯誤,原因就是:上面的語句會解釋成,一個函數(shù)帶一匿名函數(shù)作為參數(shù)而被調(diào)用, 返回42后, 又一次被"調(diào)用", 這就導致了錯誤。所以我想起來之前hax在Jsconf上不用分號的建議是值得商榷的。
最后附上最近看到的一個JavaScript的小知識,眾所周時JavaScript的基本數(shù)據(jù)類型有五種:string,number,null,undefined,boolean,那么為什么
typeof null
顯示的是object類型,這屬于瀏覽器的對語言層面的一個BUG,原因在于Object在底層數(shù)據(jù)存儲是以二進制格式存儲的,瀏覽器以前三個二進制位進行判斷,如果前三個二進制位都是000的話會被判斷為屬于Object類型,問題在于null底層存儲是全為0,所以會被檢測為Object類型。
歡迎大家到我的個人博客看看,https://mrerhu.github.io ?
文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/86715.html
摘要:然而小程序放上去不到兩周,就在昨天就在昨天就在昨天,突然收到騰訊云的郵件提示,欠費,,什么情況啊,我懵逼了,想了半天,先充了幾塊錢進去,畢竟不想自己努力構思的產(chǎn)品,就誕生這么幾天就夭折了。 showImg(https://segmentfault.com/img/bVbkcfC?w=1080&h=298); 做過前端,或?qū)π〕绦蛴行┝私獾耐瑢W都知道,小程序是沒有域名訪問概念的,訪問的路...
摘要:然而小程序放上去不到兩周,就在昨天就在昨天就在昨天,突然收到騰訊云的郵件提示,欠費,,什么情況啊,我懵逼了,想了半天,先充了幾塊錢進去,畢竟不想自己努力構思的產(chǎn)品,就誕生這么幾天就夭折了。 showImg(https://segmentfault.com/img/bVbkcfC?w=1080&h=298); 做過前端,或?qū)π〕绦蛴行┝私獾耐瑢W都知道,小程序是沒有域名訪問概念的,訪問的路...
摘要:老姚淺談怎么學鑒于時不時,有同學私信問我老姚,下同怎么學前端的問題。擼碼聽歌,全局控制。 淺析用 js 解析 xml 的方法 由于項目上需要解析 xml,于是各種百度,然后自己總結了下各個主流瀏覽器解析 xml 的方法,只能是很淺顯的知道他的用法,但是還沒有深層次的研究。 裝 X - 建立自己的斗圖網(wǎng)站庫 之前加過一個斗圖群,看到很多經(jīng)典的表情,然后就收藏到了 QQ, 迫于本屌絲開不起...
閱讀 2172·2023-04-25 20:45
閱讀 1085·2021-09-22 15:13
閱讀 3653·2021-09-04 16:48
閱讀 2589·2019-08-30 15:53
閱讀 940·2019-08-30 15:44
閱讀 957·2019-08-30 15:43
閱讀 1014·2019-08-29 16:33
閱讀 3443·2019-08-29 13:08