JavaScript创建对象几种方式
来源:互联网 发布:加盟淘宝网店是真的吗 编辑:程序博客网 时间:2024/06/06 23:51
//利用函数来创建一个对象function People(name){ this.name = name; this.printName = function(){ console.log(name); };}var p1 = new People('LouKit');//直接采用对象创建var obje = new Object();obj.name = 'LouKit';obj.printName = function(){ console.log(obj.name);};//利用对象字面量方式来创建 var obj = { name: 'LouKit', printNmae: function(){ console.log(obj.name); } } ===============================================//来个需求利用对象字面量方式来创建两个对象出来//构造对象var obj1 = { name: 'LouKit1', age: 100, printName: function(){ console.log(obj1.name); }}var obj2 = { name: 'LouKit2', age: 91, printName: function(){ console.log(obj2.name); }}//有没有感觉太麻烦了,不符合‘面向对象’,那转变下采样抽出参数,利用函数做做自动化 =============================================== function createObj(name, age){ var obj = { name: name, age: age, printName: function(){ console.log(this.name); } }; return obj;}var obj1 = createObj('LouKit1', 30);obj1.printName();var obj2 = createObj('LouKit2', 25);obj2.printName();//发线一个问题通过参数避免了每次都创建对象的麻烦 但构造高出来的对象都是Object类型对象//那换成这样:function Person(name, age){ this.name=name, this.age=age, this.printName=function(){ console.log(this.name); }}var obj1 = new Person('LouKit1',20);var obj2 = new Person('LouKit2',21);//好像解决问题了,创建出来的对象也有自己的类型(Person),但每个实例的printName实际上作用一样,//每个实例要重复一遍,大量对象存在的时候是浪费内存//那就再换种,原型方式function Person(name, age){ this.name=name, this.age=age,}Person.prototype.printName = function(){ console.log(this.name);}、、、、、解决问题了
参考文章:
http://www.cnblogs.com/dolphinX/p/4385862.html
0 0
- JavaScript 创建对象的几种方式
- JavaScript创建对象的几种方式
- Javascript创建对象的几种方式
- javascript创建对象的几种方式
- javascript创建对象几种方式
- javascript创建对象的几种方式
- javascript创建对象的几种方式
- javascript 创建对象的几种方式
- Javascript创建对象的几种方式
- JavaScript创建对象的几种方式
- JavaScript创建对象的几种方式
- JavaScript 创建对象的几种方式
- 【javascript】创建对象的几种方式
- javascript创建对象的几种方式
- JavaScript创建对象的几种方式
- Javascript创建对象的几种方式
- javascript 创建对象的几种方式
- javascript对象的几种创建方式
- Raspberry Pi3 安装 ROS桌面完整版攻略
- 常用的日期格式化工具类
- python 基础代码注释和时间属性
- Spring如何装配各种集合类型的属性
- RecyclerView监听
- JavaScript创建对象几种方式
- Python 基于python+Testlink+Jenkins实现的接口自动化测试框架
- 简单实用的linux分区办法
- LeetCode 382. Linked List Random Node
- JavaBean的映射工具: Dozer
- Android阶段性学习总结
- 图片剪裁cropper插件结合网站示例 支持图片旋转,裁剪,加水印功能 类似58同城效果
- Java 集合框架
- Android使用系统自动SDK V7库实现切换主题