摘要:不信,那我們來兩個代表示例看看基本類型引用類型它們的引用地址相同看起來好像是沒什么問題的。總結任何時候任何一個問題都不要小看它,拘束于表面,因為它隨時都會是一個坑,讓你跳進去,認真點總不會有壞處的。
某天,和某同事交流技術,他提到了一個問題:在js中,如果一個變量賦值給另一個變量,那么他們一定相等嗎?為什么?。然后,我脫口而出,是相等,這無毛病。變量賦值本身就只是一個定義好的變量的副本,他們相等是沒問題的,即便是引用類型的數(shù)據(jù)對象,在賦值的時候保持著內(nèi)存的同一引用,它們當然也相等啊。當然注意這里是相等,不是全等。即"=="而非"===",所以沒有什么類型轉(zhuǎn)換的討論。不信,那我們來兩個代表示例看看:
//基本類型 var a; var b = a; b == a;//true //引用類型 var a = {}; var b = a; b == a;//true,它們的引用地址相同
看起來好像是沒什么問題的。然而事實真的是這樣嗎?
我轉(zhuǎn)念一想,不對啊,有這么簡單的問題?同事再給我一個例子,狠狠的打擊了我,臥槽,還可以這樣?
js數(shù)據(jù)當中還有一個特殊的值,那就是NaN。
var a = NaN; var b = a; b == a;//猜猜這里是啥
答案真的是出乎你的意料,當然是false,也就是不相等啦。
不帶這么玩的吧?
后面腦袋一閃,原來如此,這么低級的錯誤都犯,NaN雖然是一個數(shù)值型的值,但是它并不是一個確切的值,所以NaN !== NaN。也就是說,變量的賦值也不會改變它們的不等性呢。
還可以這么玩。
ps:總結:任何時候任何一個問題都不要小看它,拘束于表面,因為它隨時都會是一個坑,讓你跳進去,認真點總不會有壞處的。
鄙人創(chuàng)建了一個QQ群,供大家學習交流,希望和大家合作愉快,互相幫助,交流學習,以下為群二維碼:
文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/109491.html
摘要:最近真是忙的吐血。。。上篇寫的是直接在爬蟲中使用,這樣不是很好,下使用才是正經(jīng)方法。 最近真是忙的吐血。。。 上篇寫的是直接在爬蟲中使用mongodb,這樣不是很好,scrapy下使用item才是正經(jīng)方法。在item中定義需要保存的內(nèi)容,然后在pipeline處理item,爬蟲流程就成了這樣: 抓取 --> 按item規(guī)則收集需要數(shù)據(jù) -->使用pipeline處理(存儲等) 定義it...
今天我們來聊聊最近引發(fā)熱議的Adobe服務條款變更。作為創(chuàng)意軟件行業(yè)的巨頭,Adobe在過去30多年中一直是設計師和藝術家們的首選工具。它旗下的Photoshop、Illustrator等軟件幾乎是每個創(chuàng)意工作者的必備。而Firefly是Adobe推出的生成式AI,用于自動化創(chuàng)意內(nèi)容的生成和編輯。今年二月,Adobe對其服務條款悄悄進行了變更,表示可以通過自動和手動方法訪問用戶內(nèi)容,并使用機器學習...
小編寫這篇文章的主要目的,是給大家介紹一下自動化辦公,能夠大大的其提高辦公的效率。那么,怎么樣才能夠生成日報呢?下面給大家詳細的解答下?! ∠旅嫖覀兺ㄟ^一個補寫銷售日報的案例,展示一下Python自動化辦公的優(yōu)勢。本文簡化了案例的流程?! ⌒枨笤斀狻 ∨笥训男枨笫沁@樣的,他們平時的銷售數(shù)據(jù)是記錄在Excel上,匯總后會按照部門進行統(tǒng)計。但是今年年初時,領導突然要求寫日報,大家寫了一個月發(fā)現(xiàn)并不...
小編寫這篇文章的一個主要目的,就是來給大家去做一個解答,解答的內(nèi)容主要是Python常見的一些bug和異常問題,那么,遇到這些問題的時候,我們需要找到好辦法去進行處理。那么,小編這邊就給大家做了一個總結,總結常見的異常問題,大家好好閱讀哦?! ‘惓L幚斫榻B 在實際的開發(fā)中,我們經(jīng)常遇到一些報錯的例子,在pycharm的顯示頁面下,當我們看到一串串的紅色的英文字母的時候,就是出現(xiàn)異常,這個時候...
在使用python的時候,經(jīng)常性的會遇到各種各樣的問題,比如出現(xiàn)異常的時候,怎么才能夠跳過其異常繼續(xù)執(zhí)行呢?下面就給大家詳細的解答下?! ython如何跳過異常繼續(xù)執(zhí)行 下面有兩種解決方法 第一種是類似if…else…;另外一種是使用語句來實現(xiàn)繼續(xù)執(zhí)行; 方法一:使用try…except…語句,類似于if…else…,可以跳過異常繼續(xù)執(zhí)行程序,這是Python的優(yōu)勢 用法如下: 方...
閱讀 3096·2021-10-08 10:18
閱讀 808·2019-08-30 15:54
閱讀 1121·2019-08-29 18:43
閱讀 2498·2019-08-29 15:33
閱讀 1373·2019-08-29 15:29
閱讀 1666·2019-08-29 13:29
閱讀 1088·2019-08-26 13:46
閱讀 1748·2019-08-26 11:55