色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

javascript入門基礎之私有變量

先看Javascript的普通函數用法
復制代碼 代碼如下:
function sum(a,b){
var c = 10;
function add(){
c++;
}
add();
return a + b + c;
}
var d = sum(4,5);
alert(d) // 20

可以看出,外部要和函數sum進行交互,只能通過調用和返回值形式,無法訪問里面的參數c和內部函數add()。這對于函數來說屬于正常邏輯。
接下來看Javascript的類用法
復制代碼 代碼如下:
function sum(pa,pb) {
this.a = pa;
this.b = pb;
this.show = function(){
alert(this.a + this.b);
}
}
var t = new sum(4,5);
t.show();
alert(t.a);

這里通過new創建了sum的對象t。通過t可以調用方法show來顯示參數和,也可以直接取參數信息
結合兩種方式就產生私有變量和方法的效果。

復制代碼 代碼如下:
function sum(pa,pb) {
var __c = 10; //私有變量
function __addc(){ //私有方法
__c++;
}
this.a = pa; //公有變量
this.b = pb; //公有變量
this.setc = function(pc){ //公有方法
__c = pc;
__addc();
}
this.show = function(){ //公有方法
alert(this.a + this.b + __c);
}
}
var t = new sum(4,5);
t.setc(1);
t.show();

從這個例子可以看出,外部無法調用var聲明的變量和方法,但外部可以通過公有方法為橋梁實現與私有變量交互
建議:為了便于閱讀與區分,私有變量和方法在命名前加一個或者兩個下劃線。

JavaScript技術javascript入門基礎之私有變量,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 花垣县| 江达县| 盐亭县| 望谟县| 石河子市| 万宁市| 神农架林区| 正蓝旗| 长垣县| 商水县| 达拉特旗| 昌邑市| 庆安县| 姚安县| 马尔康县| 建始县| 安庆市| 澄迈县| 崇礼县| 霍山县| 六枝特区| 南陵县| 莱芜市| 泰安市| 吉安市| 蛟河市| 新余市| 台北县| 威信县| 噶尔县| 公安县| 蓬莱市| 方正县| 吕梁市| 潞西市| 桐乡市| 长武县| 元江| 吕梁市| 廉江市| 广河县|