你不知道的JS中卷筆記

1.在if的條件中不能直接使用未申明的變量

要點:typeof對未申明的變量返回“undefined”澎现。

//若DEBUG在開發(fā)和測試中才會有,生產(chǎn)環(huán)境沒有
//這樣會ReferenceError
if (DEBUG) {
   console.log("開始調(diào)試");
}

//使用typeof的安全防范機制使其安全
if (typeof DEBUG !== "undefined") {
  console.log("開始調(diào)試");
}

//使用對象.屬性的方式訪問避免錯誤
if (window.DEBUG) {
  console.log("開始調(diào)試");
}

2.字符串的不可變性

要點,雖然可以以數(shù)組的方式訪問每辟,但是仍為不可變剑辫。

let a = 'foo';
console.log(a[1]);//  o
a[1] = 'x'; 
console.log(a[1]);//  o

3.判斷NaN使用Number.isNaN()

window.isNaN("foo");//true
Number.isNaN("foo");//false

4.對基本類型封裝與拆封

let a = 'abc';
let b = new String( a );
let c = new Object( a );
typeof a;//  "string"
typeof b;//  "object"
typeof c;//  "object"
//使用valueOf()對包裝類型進行拆封
a.valueOf();//  "abc"

5.ToNumber

Number(undefined); // undefined
Number(null); // 0
Number(""); //0
Number([]); //0
Number([ "abc"]); //NaN

6.ToBoolean

一、除了以下值渠欺,強制類型轉(zhuǎn)換是false妹蔽,其他都為true
1.undefined
2.null
3.false
4.+0,-0挠将,NaN
5.""http://空字符串
二胳岂、包裝類型都為true
例1:
let a = new Boolean( false );
let b = new Number( 0 );
let c = new String( "" );
let d = Boolean( a && b && c);// true

例2:
let a = [];
let b = {};
let c = function(){};
let d = Boolean( a && b && c);// true

三、if使用的是toBoolean()來轉(zhuǎn)換為Boolean類型
if([]) console.log('true'); // true
[] == true; //false

7.顯式強制類型轉(zhuǎn)換

一舔稀、字符串轉(zhuǎn)數(shù)字
1. +"42" //42
2. "42" * 1 //42

二乳丰、日期轉(zhuǎn)數(shù)字
1. + new Date(); //1562722522069
2. Date.now(); //1562722786254

8.隱式類型轉(zhuǎn)換

==允許在相等比較中進行強制類型轉(zhuǎn)換,而===不允許
// +操作會被轉(zhuǎn)換為字符串
1. [1, 2] + [3, 4] // "1,23,4"
// * / - 會被轉(zhuǎn)換為數(shù)字
2. [2] * 1 // 2
// &&與||應(yīng)該稱作選擇器運算符
3. 42 && 33 // 33 
   true || 33 //true

9.“内贮!”操作符會顯式地將值強制轉(zhuǎn)換為布爾值

[] == ![] //true
右邊:![]會變?yōu)?Boolean([])产园,其結(jié)果為!true,最終為false。
最后變?yōu)閇] == false夜郁。成立
1. [] == false // true
2. !![] == true // true

10.switch要點case 后的結(jié)果會和switch的條件進行===比較

let a = 'hello world';
let b = 10;
switch (true) {
  case (a || b == 10):
    //永遠不會執(zhí)行到這里
    break;
  default:
    console.log( "Oops" );
}
//Oops
原因:a || b == 10 的結(jié)果為'hello world', 'hello world' === true //false

11.變量與值:在賦值時只是賦給了形參對參數(shù)的引用什燕,而形參與原參數(shù)沒有關(guān)系,理解變量與值之間的關(guān)系竞端。

function setName(obj) {
  obj.name = 'Nicholas';
  obj = new Object();
  obj.name = 'Greg';
}
let person = new Object();
setName(person);
alert(person.name); //'Nicholas'
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末屎即,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子事富,更是在濱河造成了極大的恐慌剑勾,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,627評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件赵颅,死亡現(xiàn)場離奇詭異,居然都是意外死亡暂刘,警方通過查閱死者的電腦和手機饺谬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,180評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人募寨,你說我怎么就攤上這事族展。” “怎么了拔鹰?”我有些...
    開封第一講書人閱讀 169,346評論 0 362
  • 文/不壞的土叔 我叫張陵仪缸,是天一觀的道長。 經(jīng)常有香客問我列肢,道長恰画,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,097評論 1 300
  • 正文 為了忘掉前任瓷马,我火速辦了婚禮拴还,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘欧聘。我一直安慰自己片林,他們只是感情好,可當我...
    茶點故事閱讀 69,100評論 6 398
  • 文/花漫 我一把揭開白布怀骤。 她就那樣靜靜地躺著费封,像睡著了一般。 火紅的嫁衣襯著肌膚如雪蒋伦。 梳的紋絲不亂的頭發(fā)上弓摘,一...
    開封第一講書人閱讀 52,696評論 1 312
  • 那天,我揣著相機與錄音凉敲,去河邊找鬼衣盾。 笑死,一個胖子當著我的面吹牛爷抓,可吹牛的內(nèi)容都是我干的势决。 我是一名探鬼主播,決...
    沈念sama閱讀 41,165評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼蓝撇,長吁一口氣:“原來是場噩夢啊……” “哼果复!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起渤昌,我...
    開封第一講書人閱讀 40,108評論 0 277
  • 序言:老撾萬榮一對情侶失蹤虽抄,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后独柑,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體迈窟,經(jīng)...
    沈念sama閱讀 46,646評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,709評論 3 342
  • 正文 我和宋清朗相戀三年忌栅,在試婚紗的時候發(fā)現(xiàn)自己被綠了车酣。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,861評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖湖员,靈堂內(nèi)的尸體忽然破棺而出贫悄,到底是詐尸還是另有隱情,我是刑警寧澤娘摔,帶...
    沈念sama閱讀 36,527評論 5 351
  • 正文 年R本政府宣布窄坦,位于F島的核電站,受9級特大地震影響凳寺,放射性物質(zhì)發(fā)生泄漏鸭津。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,196評論 3 336
  • 文/蒙蒙 一读第、第九天 我趴在偏房一處隱蔽的房頂上張望曙博。 院中可真熱鬧,春花似錦怜瞒、人聲如沸父泳。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,698評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽惠窄。三九已至,卻和暖如春漾橙,著一層夾襖步出監(jiān)牢的瞬間杆融,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,804評論 1 274
  • 我被黑心中介騙來泰國打工霜运, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留脾歇,地道東北人。 一個月前我還...
    沈念sama閱讀 49,287評論 3 379
  • 正文 我出身青樓淘捡,卻偏偏與公主長得像藕各,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子焦除,可洞房花燭夜當晚...
    茶點故事閱讀 45,860評論 2 361