日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

【JS笔记】私有变量

發布時間:2025/7/14 javascript 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【JS笔记】私有变量 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.任何函數中定義的變量都可以認為是私有變量。函數內部可以訪問,外部不能訪問。

可以通過閉包創建特權方法訪問私有變量。

function Foo(){var n=10;this.returnN=function(){return n;}; }; var newfoo=new Foo(); console.log(newfoo.returnN())//10

2.靜態私有變量的創建是在私有域中定義私有變量和私有函數,再定義構造函數極其共有方法。構造函數不使用函數聲明,實際上是創建了一個全局變量。公有方法在原型上定義。

(function(){var name = "";Person = function(value){ name = value; };Person.prototype.getName = function(){return name;};Person.prototype.setName = function (value){name = value;}; })();var person1 = new Person("Nicholas"); alert(person1.getName()); //"Nicholas" person1.setName("Greg"); alert(person1.getName()); //"Greg"var person2 = new Person("Michael"); alert(person1.getName()); //"Michael" alert(person2.getName()); //"Michael"

這種方法下,name成了一個所有實例公有的靜態屬性,更改它會影響到所有的實例。

3.模塊模式是為單例創建私有變量和特權方法的。(單例指只有一個實例的對象,是以對象字面量的方式創建的。)

var single=function (argument) {var privateVar=10;function privateFun () {//私有方法函數 }return {publicProerty:true,//返回的共有方法可訪問私有變量publicMethod:function () {privateVar++;return privateFun()}} }

?

模塊模式使用一個返回對象的匿名函數,在這個匿名函數的內部,首先定義私有變量和函數,然后將一個對象字面量作為函數的值返回。返回的對象字面量中只包含公開屬性和方法。由于這個對象是在匿名函數內部定義的,因此它的共有方法有權訪問私有變量和函數。也就是說,這個對象字面量定義的是單例的公共接口。這種模式在需要對單例進行某些初始化,同時又需要維護其私有變量時有用。

轉載于:https://www.cnblogs.com/rizzle/p/4534662.html

總結

以上是生活随笔為你收集整理的【JS笔记】私有变量的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。