JS中with的用法及其優缺點

2021-10-08 10:56:53 字數 646 閱讀 2334

js中的with:

with的語法結構為:

with(object)
with主要是用來對物件取值的, 如下 所示:

with(obj)
該語句 等價於: 

var newa = obj.a;

var newb = obj.b;

console.log(newa+newb);

with的 優:

當with傳入的值非常複雜時,即當object為非常複雜的巢狀結構時,with就使得**顯得非常簡潔。

with的缺點:

js的編譯器會檢測with塊中的變數是否屬於with傳入的物件, 上述例子為例,js會檢測a和b是否屬於obj物件,這樣就會的導致with語句的執行速度大大下降,效能比較差。

以下方法可以同時兼顧**簡潔以及執行速度:

var obj = company.department.group;

var newa = obj.a;

var newb = obj.b;

console.log(newa+newb);

js繼承方式及其優缺點?

原型鏈繼承的缺點 一是字面量重寫原型會中斷關係,使用引用型別的原型,並且子型別還無法給超型別傳遞引數。借用建構函式 類式繼承 借用建構函式雖然解決了剛才兩種問題,但沒有原型,則復用無從談起。所以我們需要原型鏈 借用建構函式的模式,這種模式稱為組合繼承 組合式繼承 組合式繼承是比較常用的一種繼承方法,...

js如何實現繼承及其優缺點

父類 function person 子類 function man man.prototype new person var one new man console.log one.feature beard strong console.log one.hair black console.lo...

JS閉包的理解及其優缺點

初級理解 js高程 小紅書 閉包是指有權訪問另乙個函式作用域中變數的函式。其認為閉包是乙個函式 中級理解 you don t know js 小黃書 閉包是導致函式呼叫棧不能正常銷毀的一種持續引用 這種引用一般體現於某個函式體內其他函式的宣告 高階理解 形成閉包的真正原因是 作用域未能正常釋放,變數...