基于原生JavaScript封装对象模板
来源:互联网 发布:唯一网络王宇杰老婆 编辑:程序博客网 时间:2024/06/05 02:38
//样例使用对象
onload = function(){
var p1 = new Person(‘zzh’,12);
p1.sayWord();
console.log(p1.drink);
Person.test2(); console.log(Person.eat); p1.getHome(); console.log(p1.age); var p2 = new Person('hsy',12); p2.getHome(); console.log(p2.age); console.log(p1.test == p2.test); // true 证明静态私有变量共享性
}
//创建Person对象
var Person = (function(){
// 静态私有属性(只能在内部调用) var home = "china"; // 静态私有方法(只能在内部调用) function sayHome(name){ console.log(name + "'s home in " + home); }// 构造函数function _person(name,age){ var _this = this; //构造函数安全模式,避免创建时候丢掉new关键字 if(_this instanceof _person){ // 公有属性和方法 _this.name = name; _this.getHome = function(){ sayHome(_this.name); }; _this.test = sayHome; //用于测试 // 构造器 _this.setAge = function(age){ _this.age = age + 12; }(age); }else{ return new _person(name,age); }}// 静态方法 只能被类访问_person.test2 = function(){ console.log("you are so man");}// 静态属性 只能被类访问_person.eat = "eat some banana";_person.prototype.test3 = function(){ // ??????? console.log("you are a girl");}// 静态公共属性方法_person.prototype = { constructor:_person, drink:'water', // 可以通过对象进行访问 不能通过类名进行访问 sayWord:function(){ // 可以通过对象进行访问 不能通过类名进行访问 console.log('you are a boy'); }}return _person;
})();
阅读全文
0 0
- 基于原生JavaScript封装对象模板
- 原生JavaScript封装Ajax
- 封装原生javascript连缀
- 原生JavaScript封装ajax
- 原生JavaScript封装insertAfter方法
- 使用原生JavaScript封装cookie
- Javascript封装原生ajax请求
- 原生JavaScript面向对象
- 原生Javascript面向对象
- 扩展javascript原生对象
- 基于原生javascript的淡入淡出函数封装(兼容IE)
- Ajax实战总结——用原生JavaScript代码封装自己的Ajax核心对象
- 原生javascript-无间缝滚动,封装
- 原生javascript-无间缝滚动,封装
- ajax 异步封装-函数 javascript原生
- 原生Javascript封装的一些常用函数
- 用原生javascript封装ajax技术
- 原生Javascript插件封装开发实践
- 简单选择排序
- get请求和post请求
- CSS(6)__CSS基本用法<2D属性和3D特效>
- AbstractQueuedSynchronizer(AQS)锁阻塞机制分析----自旋等待与挂起
- HttpClient和HttpURLConnection
- 基于原生JavaScript封装对象模板
- Hibernate学习笔记(四)
- floor函数与ceil函数
- ssh
- vs2015配置agent++
- Listview中CheckBox全选
- 聊天室
- C#之入门总结_01
- 快选选定复制文档或文档内容