您的位置:首页 > Web前端 > JavaScript

JS 封装

2015-10-06 22:00 507 查看
[b]一。全局变量[/b]

定义:三种
(1)	var test = 'some value';
(2)	window.test = 'some value';
(3)	(function () {
var a;
test = 'some value';
})();	//在函数中不写var的,就是全局。

注意:
function todo() {
var a = test = 'some value';
}

//在js中。a是局部变量, 而test是全局变量。

function todo() {
var a = '11',
b = 'ab';
test = 'some value';
}

全局变量,可以在任何地方做操作。可能会产生命名冲突。程序不稳定。调试困难。

[b]二,信息隐藏。[/b]
面向对象的封装,有一些公有方法,和一些私有方法。

//使用函数封装
function A() {
this.a = 'a';
this.b = 'b';

this.step1 = function () {
;
}
this.step2 = function () {
;
}
}

//使用原型封装
function B() {
this.a = 'a';
this.b = 'b';
}
var pro = A.prototype;
pro.step1 = function () {
;
}
pro.step2 = function () {
;
}

有问题。公有私有不分。访问权限相同。没有达到信息隐藏的目的。

达到信息隐藏的方式。外界也可以操作


function A() {
var config = ['a', 'b', 'c'];
this.getConfig = function () {
return config;
}
}

var pro = A.prototype;
pro._step1 = function () {
;
}
pro._step2 = function () {
;
}

继承:
类继承:
  组合继承,就不写了。

原型继承:这个很少用,写一下。
(function () {
var proto = {
action1 : function () {
;
},
action2 : function () {

}
}
var obj = Object.create(proto);

}) ();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: