1樓:17dian
1)! 的優先順序高於== ,右邊運算結果等於 false2)乙個引用型別和乙個值去比較把引用型別轉化成值型別,左邊03)所以 0 == false 答案是true如果問題是為什麼是true
2樓:
console.log
!比==先算,空陣列是乙個物件所以右邊的值變成了false== false;
當值型別的資料和引用型別的資料進行運算(算數運算,關係運算)的時候,會遵守如下的步驟。
1. 會呼叫引用型別資料的valueOf方法,獲取返回值,嘗試和值型別的資料進行運算, 如果可以計算,就得出結果
2. 如果不能計算,就繼續呼叫這個引用型別資料的toString方法,獲取返回值,進行計算!
.toString()
// ""
空字元和false比較,自然就返回了false
3樓:
這個跟 == 操作符的轉換過程有關,可以看看這個,寫的很好為什麼 == 為 false為 true,什麼是基本型別值和引用型別值
4樓:
請查閱ES5 文件。
物件與布林值比較,
== true // 物件與布林值比較
! == true //布林值與布林值比較物件與物件比較,他們非同個物件(引用不同)類似 [1] == [1] 的比較
比如下面的:
第乙個是字串與數值,第二個是兩個字串 ,他們進行比較轉義的過程是不一樣的,
5樓:Belleve
首先,== 的定義是:
GetValue 會獲取乙個子表示式的值(消除掉左值引用),在表示式中, 的結果就是乙個空陣列的引用,而 ! 就有意思了,它會按照 11.4.
9 和 9.2 節的要求得到 false。
比較的行為在 11.9.3 節裡,所以翻到 11.9.3:
在這段演算法裡,和匹配的是條件 7,所以會遞迴地呼叫「 == ToNumber(false)」進行比較。在 9.3 節中定義了 ToNumber 原語,ToNumber(false) 等於 0,於是比較變為「 == 0」。
在此處因為 是物件,比較過程走分支 9,依「ToPrimitive() == 0」比較。ToPrimitive 預設是呼叫 toString 方法的(依 8.2.
8),於是 ToPrimitice() 等於空字串。
結果的比較最後落到了 ''==false 上,按照 11.9.3 中的定義會依分支 5 比較 「ToNumber('')==0」,ToNumber('') 依 9.
3.1 等於 0,所以結果為 true。
6樓:
== !true // ! 操作符的優先順序高於 == ,所以先執行 ! 操作
== false // !true 得到的是 false
== 0 //比較規則1:如果值為true或false,則轉成1或0來繼續比較
== 0 //執行左側的 的 valueOf 方法,而 是物件,所以 .valueOf() 返回本身
"" == 0 //執行左側的 的 toString 方法,.toString() 返回 ""
0 == 0 //比較規則2:如果乙個值是數字,乙個值是字串,則把字串轉換為數字,再進行比較,"" 轉成數字是 0。
最終是執行 0 == 0 ,結果為 true 。
教資面試結構化答的不好,點答的不全,也沒答怎麼做,能過嗎?我好慌啊 具體情況如下,求求幫我分析能過嗎?
這片海面有點難 結構化想答好太難了。所以基本都回答的都不怎麼樣,反正我當時結構化支支吾吾半天,一道題就說了幾句話,最後也過了,關鍵看試講 高中語文教資面試 我的結構化直接答錯了一題,當時主考官還驚訝地看了我一眼,而且兩題回答的都比較簡要,最後也過。我覺得結構化不是重點,沒出現一些特別嚴重的錯誤的話,...
優答錦集
個人看法,這算是中國第一款成功的網路遊戲。當年瘋狂迷戀,直接導致對後面所有的公升級類網遊免疫。傳奇一共三個職業 武士,法師,道士。有很多技能樹。最高端的都是在35級可以練。分別是 烈火劍法,冰咆哮,召喚神獸 大狗 道士如果把大狗練到7級,基本可以幹倒弓箭手 簡直是無敵般的存在。當然,武士到了35,一...
俺答封貢中賞賜給俺答津貼是否屬於賠款?
山海經異獸圖 我倒是覺的俺答入寇,實際是明朝對蒙古的經濟戰爭,取得了輝煌勝利後。蒙古走投無路的最後一搏。最後的封貢也是蒙古發現武力也無法解決問題後,認輸投降成為順義王的結局。其實如果明朝不是天子守國門,把皇帝擺在北京。而是放在長安,或開封之類的城市。所謂的俺答入寇,在明朝政治上的影響就基本等於零。俺...