JS(十六)繼承模式,命名空間,對(duì)象枚舉(下)

寫在最前面

命名空間

  • 管理變量,防止污染全局,適用于模塊發(fā)開發(fā)

主要就是開發(fā)過程中遇到的命名沖突的問題,可以用對(duì)象的方法解決

var wu  = {
    name : yanzu,
    age : 18,
};

var shen = {
  name = "cheng",
  age = 18;
}

//調(diào)用的時(shí)候
wu.name
shen.name

//不沖突

也可以用閉包的方法


var name = 345;
var init = (function(){
    var name = "abc";
    
    var name = 123;
    function callName(){
        console.log(name);
    }
    
    returnfunction(){
        callName;
    }
    
}())

//這樣子寫就算 外部有重復(fù)的變量也不會(huì)沖突,因?yàn)閳?zhí)行完就被銷毀了。等待下次被執(zhí)行。

其實(shí)現(xiàn)在的代碼管理工具還有打包工具很多如 WebPack之類的...


對(duì)象的枚舉

遍歷 枚舉

  • for in
    • hasOwnProPerty
    • in
    • instanceof

for...in

var obj = {
    name : "123",
    age: 12,
    sex:"male";
    height :180,
    
}
for(var key in obj){
    console.log(key);//上面會(huì)打印出obj的屬性
    console.log(obj[key]);//會(huì)打印屬性值
}

hasOwnProPerty

var obj = {
    name : "123",
    age: 12,
    sex:"male";
    height :180,
    __proto__:{
        lastName : "wu"
    }
}

for(var key in obj){
    console.log(obj[key]);//會(huì)打印屬性值
    //這樣子直接打印也會(huì)把原型上面的方法給打印出來
    //可以用hasOwnProPerty來過濾掉
    if(obj.hasOwnProPerty){
     console.log(obj[key]);   
    }
    //這樣就不會(huì)把他原型上面的方法給過濾掉
}

in

//判斷屬性是不是在對(duì)象里面,包括原型上面的

var obj = {
    name : "123",
    age: 12,
    sex:"male";
    height :180,
    __proto__:{
        lastName : "wu"
    }
}

"name" in obj //打印true
lastName in obj //打印true

instanceof


A instanceof B

// A對(duì)象 是不是 B構(gòu)造函數(shù)構(gòu)造出來的(官方給出的介紹)

//看A對(duì)象的原型鏈上 有沒有 B的原型
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,034評(píng)論 25 709
  • 命名空間的作用:管理變量,防止全局污染,適用于模塊化開發(fā),閉包的變量私有化就是一個(gè)很好的處理命名空間的問題. 小技...
    Sune小葉子閱讀 378評(píng)論 0 0
  • 昨天晚上,你出現(xiàn)在我的夢(mèng)里。夢(mèng)里的你很真實(shí),你粗魯?shù)陌盐依侥闵磉呌置偷陌盐胰M(jìn)懷里,和3年前一樣,你有著那溫柔如...
    積木積木閱讀 361評(píng)論 0 3

友情鏈接更多精彩內(nèi)容