js小問題

今天看到一個(gè)js的問題,想了好久之后不得其解各聘,到晚上才發(fā)現(xiàn)了問題所在寓娩,題目是這樣的:

if(!("a" in window)){
  var a=1;
}
alert(a);

想必大家應(yīng)該看到過這個(gè)題目,他的正確答案是<code>1</code>.
我的思考過程如下:


首先在js里邊有個(gè)hoist機(jī)制堕仔,也就是變量和函數(shù)聲明提升機(jī)制擂橘。根據(jù)我之前的理解。
第一步摩骨,if語句沒起到隔離作用域的作用通贞,變量a還是聲明在全局的。所以接下來就要看判斷條件
<code>!("a" in window)</code>是否成立了恼五,他決定著變量a是否被被賦值昌罩。
第二步,接下來我們看<code>!("a" in window)</code>是否成立灾馒,注意======茎用,我也就是在這里犯迷糊了,此處開始是錯(cuò)誤的=========
我開始的時(shí)候想的是"a" 是一個(gè)字符串睬罗,如果他之前在被聲明為全局變量了轨功,那他應(yīng)該存在于window對(duì)象里的,
從事實(shí)上推斷容达,<code>"a" in window</code>應(yīng)該是<code>true</code>古涧,那么這樣賦值語句才會(huì)沒有起作用,從而彈出來的是 1.但是為什么<code>"a" in window</code>是true呢?字符串“a" 在之前從未出現(xiàn)過花盐,所以就開始瞎想了羡滑,可能是條件語句里的類型轉(zhuǎn)換圆米,也查到了很重要的資料JavaScript真值表,不過對(duì)于此題還是一無所獲
啄栓。==========
后來才想起來"a" in window 指的應(yīng)該是判斷window對(duì)象里邊是否有a這個(gè)屬性娄帖,就像for-in-obj 還有obj[name]一樣,問題就這樣解決了昙楚。應(yīng)為a被聲明為全局變量的近速,相當(dāng)于window.a。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末堪旧,一起剝皮案震驚了整個(gè)濱河市削葱,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌淳梦,老刑警劉巖析砸,帶你破解...
    沈念sama閱讀 219,039評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異爆袍,居然都是意外死亡首繁,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門陨囊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來弦疮,“玉大人,你說我怎么就攤上這事蜘醋⌒踩” “怎么了?”我有些...
    開封第一講書人閱讀 165,417評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵压语,是天一觀的道長(zhǎng)啸罢。 經(jīng)常有香客問我,道長(zhǎng)胎食,這世上最難降的妖魔是什么扰才? 我笑而不...
    開封第一講書人閱讀 58,868評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮斥季,結(jié)果婚禮上训桶,老公的妹妹穿的比我還像新娘。我一直安慰自己酣倾,他們只是感情好舵揭,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,892評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著躁锡,像睡著了一般午绳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上映之,一...
    開封第一講書人閱讀 51,692評(píng)論 1 305
  • 那天拦焚,我揣著相機(jī)與錄音蜡坊,去河邊找鬼。 笑死赎败,一個(gè)胖子當(dāng)著我的面吹牛秕衙,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播僵刮,決...
    沈念sama閱讀 40,416評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼据忘,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了搞糕?” 一聲冷哼從身側(cè)響起勇吊,我...
    開封第一講書人閱讀 39,326評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎窍仰,沒想到半個(gè)月后汉规,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,782評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡驹吮,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,957評(píng)論 3 337
  • 正文 我和宋清朗相戀三年针史,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片钥屈。...
    茶點(diǎn)故事閱讀 40,102評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡悟民,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出篷就,到底是詐尸還是另有隱情,我是刑警寧澤近忙,帶...
    沈念sama閱讀 35,790評(píng)論 5 346
  • 正文 年R本政府宣布竭业,位于F島的核電站,受9級(jí)特大地震影響及舍,放射性物質(zhì)發(fā)生泄漏未辆。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,442評(píng)論 3 331
  • 文/蒙蒙 一锯玛、第九天 我趴在偏房一處隱蔽的房頂上張望咐柜。 院中可真熱鬧,春花似錦攘残、人聲如沸拙友。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽遗契。三九已至,卻和暖如春病曾,著一層夾襖步出監(jiān)牢的瞬間牍蜂,已是汗流浹背漾根。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留鲫竞,地道東北人辐怕。 一個(gè)月前我還...
    沈念sama閱讀 48,332評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像从绘,于是被迫代替她去往敵國(guó)和親秘蛇。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,044評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法顶考,類相關(guān)的語法赁还,內(nèi)部類的語法,繼承相關(guān)的語法驹沿,異常的語法艘策,線程的語...
    子非魚_t_閱讀 31,639評(píng)論 18 399
  • 1 js中typeof、instanceof與constructortypeof返回一個(gè)表達(dá)式的數(shù)據(jù)類型的字符串渊季,...
    織田信長(zhǎng)閱讀 295評(píng)論 0 0
  • 這是暗物質(zhì)朋蔫,小能熊365天寫作計(jì)劃第三十九天的寫作內(nèi)容,謝絕轉(zhuǎn)載却汉。 在進(jìn)入救援艇的前一刻驯妄,羅逸紫鳥他們改變了主意,...
    黑暗物質(zhì)閱讀 260評(píng)論 0 0
  • 2017/04/11 首先合砂,去Sourceforge下載Mingw青扔。在安裝Mingw時(shí),package要勾選C++...
    William_An閱讀 2,595評(píng)論 0 4
  • 漲一天凛剥,跌一天,如此震蕩反復(fù)似乎已成為年底A股新常態(tài)轻姿,不過前期提到的貝瑞基因最近微漲犁珠。今天我還是會(huì)在文中跟大家分享...
    愛徽米粒閱讀 157評(píng)論 0 0