最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Javascript 陷阱 window全局對(duì)象

 更新時(shí)間:2008年11月26日 12:31:22   作者:  
ff和ie6下都是同樣的運(yùn)行結(jié)果,看來不是bug,那究竟是為什么呢? 注意到:對(duì)象方法訪問其對(duì)象的屬性時(shí)|必須|加以this.(和java不一樣).
function Test(){
this.name='Test';
var name=2;
this.show=function(){
alert(name);
alert(this.name);//顯示名字
}
}
var test=new Test();//通過構(gòu)造器創(chuàng)建一個(gè)對(duì)象
test.show();//輸出2和'Test' ,說明對(duì)象方法訪問其屬性時(shí)必須加this.

function Test2(){
this.name='Test2';
this.show=function(){
alert(name);
alert(this.name);
}
}
Test();//直接調(diào)用Test();
var test2=new Test2();
test2.show();//輸出了Test,Test2,很奇怪啊,name問什么有值了,而且怎么會(huì)是'Test',bug?
alert(name);
window.show(); //輸出2,test;怎么會(huì)有show函數(shù)呢,難道是bug

//依次輸出2,Test;Test,Test2;Test;2,Test

// ff和ie6下都是同樣的運(yùn)行結(jié)果,看來不是bug,那究竟是為什么呢?
// 注意到:對(duì)象方法訪問其對(duì)象的屬性時(shí)|必須|加以this.(和java不一樣).
// 整個(gè)頁面是默認(rèn)的是|window|對(duì)象,那么定義的函數(shù),默認(rèn)就是window對(duì)象的方法。
//直接直接調(diào)用函數(shù)時(shí),相當(dāng)于通過window.調(diào)用方法,那么方法內(nèi)部的this自然就是\
//window對(duì)象,this.name='Test'就是為window對(duì)象加了一個(gè)屬性.
// 那么當(dāng)方法局部作用域內(nèi)未定義name且調(diào)用alert(name),就相當(dāng)于調(diào)用alert(window.name);
/*啊,代碼混亂了。這看起來像一個(gè)很嚴(yán)重的陷阱??!*/

相關(guān)文章

  • JavaScrip變量聲明關(guān)鍵字var、let、const詳解

    JavaScrip變量聲明關(guān)鍵字var、let、const詳解

    在JavaScript中var、let和const是用于聲明變量的關(guān)鍵字,但它們之間存在一些關(guān)鍵的區(qū)別,這篇文章主要介紹了JavaScrip變量聲明關(guān)鍵字var、let、const的相關(guān)資料,需要的朋友可以參考下
    2025-04-04
  • ES6之Proxy的get方法詳解

    ES6之Proxy的get方法詳解

    這篇文章主要介紹了ES6之Proxy的get方法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • javascript數(shù)組去掉重復(fù)

    javascript數(shù)組去掉重復(fù)

    去tx面試過幾次,基本都會(huì)考到數(shù)組去重。其實(shí)平時(shí)工作中幾乎不會(huì)用到,再者也沒認(rèn)真去了解過,所以基本上每次面到這里都會(huì)露出很大的馬腳,面試自然也over了
    2011-05-05
  • JS中‘hello’與new String(‘hello’)引出的問題詳解

    JS中‘hello’與new String(‘hello’)引出的問題詳解

    這篇文章主要給大家介紹了關(guān)于JS中'hello'與new String('hello')引出的問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-08-08
  • JavaScript控制兩個(gè)列表框listbox左右交換數(shù)據(jù)的方法

    JavaScript控制兩個(gè)列表框listbox左右交換數(shù)據(jù)的方法

    這篇文章主要介紹了JavaScript控制兩個(gè)列表框listbox左右交換數(shù)據(jù)的方法,實(shí)例分析了javascript操作列表框listbox的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-03-03
  • JavaScript設(shè)計(jì)模式中的觀察者模式

    JavaScript設(shè)計(jì)模式中的觀察者模式

    這篇文章主要介紹了JavaScript設(shè)計(jì)模式中的觀察者模式,觀察者設(shè)計(jì)模式適用于監(jiān)聽一對(duì)多的操作,例如監(jiān)聽對(duì)象屬性的修改等等,觀察者模式能夠降低代碼耦合度,提升可擴(kuò)展性
    2022-06-06
  • 使用JS獲取SessionStorage的值

    使用JS獲取SessionStorage的值

    這篇文章給大家介紹了使用js獲取sessionstorage中的值,首先獲取它是為了將獲得的信息輸出或者alert(),其次,在靜態(tài)頁面中,如果使用sessionStorage就相當(dāng)于在動(dòng)態(tài)頁面里連接了數(shù)據(jù)庫一樣,具體內(nèi)容詳情大家參考下本文
    2018-01-01
  • 帶大家了解一下JavaScript常見的五個(gè)內(nèi)存錯(cuò)誤

    帶大家了解一下JavaScript常見的五個(gè)內(nèi)存錯(cuò)誤

    這篇文章主要為大家介紹了JavaScript常見的五個(gè)內(nèi)存錯(cuò)誤,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • JavaScript實(shí)現(xiàn)電話號(hào)碼格式化的解法小結(jié)

    JavaScript實(shí)現(xiàn)電話號(hào)碼格式化的解法小結(jié)

    在 JavaScript 編程中,經(jīng)常會(huì)遇到將給定數(shù)據(jù)轉(zhuǎn)換為特定格式的問題,本文為大家整理了一些常用方法,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-11-11
  • JavaScript解決浮點(diǎn)數(shù)計(jì)算不準(zhǔn)確問題的方法分析

    JavaScript解決浮點(diǎn)數(shù)計(jì)算不準(zhǔn)確問題的方法分析

    這篇文章主要介紹了JavaScript解決浮點(diǎn)數(shù)計(jì)算不準(zhǔn)確問題的方法,結(jié)合實(shí)例形式分析了javascript浮點(diǎn)數(shù)運(yùn)算精度誤差的原因以及相關(guān)的解決方法與具體操作技巧,需要的朋友可以參考下
    2018-07-07

最新評(píng)論

海城市| 万载县| 息烽县| 宁陵县| 南京市| 桑日县| 天祝| 惠州市| 清流县| 蕉岭县| 江北区| 台山市| 隆回县| 晋中市| 正镶白旗| 绥芬河市| 达尔| 定兴县| 佛学| 合水县| 灌南县| 民权县| 泰宁县| 安平县| 沙坪坝区| 东方市| 台前县| 简阳市| 泸州市| 英德市| 白山市| 中山市| 乌拉特中旗| 军事| 鸡泽县| 田阳县| 侯马市| 丹棱县| 盖州市| 青川县| 晋州市|