javascript面向对象创建对象的方式小结

方式一:通过内置Object对象的方式创建 然后通过点语法,动态给对象创建属性,方法

var o1 = new Object(); o1.name = 'Tom'; o1.sing = function() { console.log('I am singing'); }

方式二:通过字面量json形式创建对象

var o2 = { "name":"jackson", "age":"10", "say":function(){ console.log("say hi"); }; };

方式三:通过构造函数创建

var o3 = function() { this.name = "Lucy", this.age = "10", this.say = function() { console.log("say hello"); } }

方式四:通过原型创建

var o4 = function() {} o4.prototype = { "name":"Taylor", "age":10, "say":function(){ console.log("say h1"); } }

方式五:通过原型和构造函数混合的形式创建(推荐使用这种,原因:尽量将方法定义为原型方法,原型方法避免了每次调用构造函数时对属性或方法的构造,节省空间,创建对象快)

var o5 = function() { this.name = 'James'; this.age = 10; } o5.prototype = { "say":function() { console.log("say hi"); } }

方式六:拷贝模式创建对象

// 先要有一个拷贝模块 function extend(target,source){ for(var k in source){ target[k] = source[k]; } return target; }; var o6 = { "name":"o6", "age":10 } var o7 = { "say":function() { console.log('say hi'); } } // o6拷贝o7的方法,然后构建成一个新的对象 var o8 = extend(o6,o7); o8.say(); // say hi

方式七:通过第三方库来创建对象

有 base2.js  和 simplejavascriptinheritance.js 来实现, 网上有资料。

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具测试上述代码运行效果。

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/2a135e8fbbc905d509a2ea9915f20a0f.html