JavaScript 隱性類型轉換步驟淺析
更新時間:2018年03月15日 17:26:47 作者:司徒正美
隱性類型轉換,是==引起的轉換,下面通過本文給大家分享JavaScript 隱性類型轉換步驟,感興趣的朋友一起看看吧
這里說的隱性類型轉換,是==引起的轉換。
- 如果存在NaN,一律返回false
- 再看有沒有布爾,有布爾就將布爾轉換為數(shù)字
- 接著看有沒有字符串, 有三種情況,對方是對象,對象使用toString進行轉換;對方是數(shù)字,字符串轉數(shù)字;對方是字符串,直接比較;其他返回false
- 如果是數(shù)字,對方是對象,對象取valueOf進行比較, 其他一律返回false
- null, undefined不會進行類型轉換, 但它們倆相等
這個順序一定要死記,這是面試時經常問到的。
下面是一些雜題,自己做做
0 == undefined
1 == true
2 == {valueOf: function(){return 2}}
NaN == NaN
8 == undefined
1 == undefined
null == {toString: function(){return 2}}
0 == null
null == 1
{ toString:function(){ return 1 } , valueOf:function(){ return [] }} == 1
總結
以上所述是小編給大家介紹的JavaScript 隱性類型轉換步驟,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
js使用棧來實現(xiàn)10進制轉8進制與取除數(shù)及余數(shù)
這篇文章主要介紹了js使用棧來實現(xiàn)10進制轉8進制、js取除數(shù)、余數(shù),需要的朋友可以參考下2014-06-06
javascript 用函數(shù)實現(xiàn)繼承詳解
下面小編就為大家?guī)硪黄猨avascript 用函數(shù)實現(xiàn)繼承詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05

