當前位置:
首頁 >
JS静态变量和静态函数
發布時間:2023/12/10
41
豆豆
生活随笔
收集整理的這篇文章主要介紹了
JS静态变量和静态函数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
function A(){this.id = "我是AA"} // 在構造函數外定義的都是所有對象共享的
A.id = "我是A";
A.sayId = function(){alert(A.id);}
A.sayId();
如上,在構造函數外用函數名定義的屬性或者方法,可以也只可以通過函數名來訪問,這和C++基本一樣。
輸出
試圖訪問非靜態變量時
function A(){this.id = "我是AA"} // 在構造函數外定義的都是所有對象共享的 A.id = "我是A"; A.sayName = function(){alert(this.id);} A.sayName();輸出
說明訪問不了。
再看看this是什么
那么如果用prototype呢?
function A(){this.id = "我是AA"} // 在構造函數外定義的都是所有對象共享的 A.prototype.id = "我是A"; A.prototype.sayName = function(){alert(this.id);} a = new A(); a.sayName(); 輸出說明:
1、輸出"我是AA"是因為"我是A"是在之后賦值的,把"我是A"覆蓋了。
2、prototype指向的是一個Object對象,注意它是一個對象,當使用prototype時(或者是定義函數后),會產生一個Object對象,等同于 object = new Object();
3、通過prototype添加的屬性和方法不是靜態的,只能通過對象來訪問。
總結
以上是生活随笔為你收集整理的JS静态变量和静态函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网剧《鬼吹灯》新篇《昆仑神宫》曝预告:铁
- 下一篇: 【JS 逆向百例】PEDATA 加密资讯