關於引用傳遞時,保留原地址問題

//引用傳遞,b指向a在內存的地址,a變更,b也變更。
var a = { name:"old_a"}
var b= a;
a.name="new_a"
console.log(b.name)// new_a
//引用傳遞,b指向a在內存的地址,a整個重新賦值(新的地址),b保留。
var a = { name:"old_a"}
var b= a;
a={test:"testa"}
console.log(b.name)// old_a

類似的處理可以用於保留被重寫的函數。

例:

//比如此時要重寫mui框架帶的mui.back.  因爲mui.back被整個重寫,指向新的內存地址,所以 old_back是能保留原函數的。

var old_back = mui.back;
mui.back=function(){
  //需要添加的新的操作。
  new_option();
  //新操作執行後繼續執行原有mui.back操作
  old_back();
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章