js中创建对象的5种方法
1、原始模式
var dog = {
name: jack,
length: 70,
wang:function(){
console.log(this.name);
}
2、工厂模式(批量)
function creatdog (name,length) {
var moudle = new object ();
dog.name=name;
dog.length=length;
dog.wang=function(){
console.log(this.name);
};
return moudle;
}
3、构造函数
function Dog (name,length) {
this.name=name;
this.length=length;
this.wang=function() {
console.log(this.name);
};
}
var dog1 = new Dog( 'wangcai' , 80) //创建一个dog1对象
Dog('wangcai', 80); //属性方法都给window对象,window.name='wangcai',window.wang()会输出wangcai
4、原型模式
function Dog () {}
Dog.prototype.name = 'wangcai';
Dog.prototype.length=80;
Dog.prototype.wang= function () {
console.log(this.name);
};
var dog1 = new Dog();
// dog1:name:'wangcai';length:80;f:wang()
5、混合模式
function Dog (name, length) {
this.name = name;
this.length = length;
}
Dog.prototype = {
hobby: ['running','eat'];
wang: function () {
console.log(this.name);
}
};
var dog1 = new Dog('wangcai', 80);
//dog1:'wangcai',80; __proto__: ['running','eat'],wang
var dog2 = new Dog('defu', );70
//dog2:'defu',70;__proto__: ['running','eat'],wang
js中创建对象的5种方法的更多相关文章
- js中创建对象的4种方法
1.直接创建,不可复用式创建var obj = new Object(); obj.name = ""; obj.id = ""; 2.使用工厂方法来创建对象, ...
- java中需要关注的3大方面内容/Java中创建对象的几种方法:
1)垃圾回收 2)内存管理 3)性能优化 Java中创建对象的几种方法: 1)使用new关键字,创建相应的对象 2)通过Class下面的new Instance创建相应的对象 3)使用I/O流读取相应 ...
- Java中创建对象的5种方法
将会列举5种方法去创建 Java 对象,以及他们如何与构造函数交互,并且会有介绍如何去使用这些方法的示例. 作为一个 Java 开发人员,我们每天都会创建大量的 Java 对象,但是我们通常会使用依赖 ...
- 【JS】<a>标签调用js中函数的几种方法
我们常用的在a标签中有点击事件: a href="javascript:js_method();" 这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问题,而 ...
- java中创建对象的五种方法
用最简单的描述来区分new关键字和newInstance()方法的区别:newInstance: 弱类型.低效率.只能调用无参构造.new: 强类型.相对高效.能调用任何public构造. newIn ...
- js中创建对象的几种方式
创建对象指创建一个object并给这个对象添加属性和方法,有以下几个方式: 最基本的: var Person={}; Person.name='tom'; Person.age='20'; Perso ...
- js中创建对象的三种方式
1. 对象字面量 var obj={ name:"小小", age:3, car:{ brand:"baoma", } }; } 2.使用内置构造函数 var ...
- 比较js中创建对象的几种方式
1.工厂模式 function createObj(name, sex){ var obj = new Object(); obj.name = name; obj.sex = sex; obj.sa ...
- Java中创建对象的四种方法
第一种 使用new关键字 第二种 使用反射技术:1)通过Class类的newInstance()方法:2)通过Constructor类的newInstance方法 第三种 通过Object类的clon ...
随机推荐
- C#读取OPC server
1.安装opc server https://blog.csdn.net/yhtppp/article/details/80676118 2.c#读取opc https://github.com/le ...
- Python开发【初始篇】:Linux下安装Python3
Linux系统默认自带python2.6的版本,这个版本被系统很多程序所依赖,所以建议不要轻易删除,除非你能解决其他程序的依赖问题.如果使用最新的Python3需要进行编译安装源码包,这样就对系统默认 ...
- node重新加载模块
delete require.cache[require.resolve('module name')]; var my_module = require('module name');
- java mail 接收邮件
package com.mw.utils; import com.mw.bean.SmsAlarmLogBean; import javax.mail.*; import javax.mail.int ...
- Visual Studio Installer 使用案例
1.创建自定义操作 一步:新建“安装程序类”文件 2.重写函数: public override void Install(IDictionary stateSaver) { base.Install ...
- C#使用反射获取对象变化的情况
记录日志时, 经常需要描述对象的状态发生了怎样的变化, 以前处理的非常简单粗暴: a. 重写class的ToString()方法, 将重要的属性都输出来 b. 记录日志时: 谁谁谁 由 变更前实 ...
- weblogic安装升级配置
本次操作是主要围绕如何搭建weblogic服务器升级weblogic软件及配置服务,总共有三大步骤,可划分为六个小步骤: 选取已有环境,准备weblogic压缩包,java包等 准备操作系统环境用户目 ...
- Purge and Seal Test on 09 GMC Yukon with Autel Maxisys Pro MS908P scanner
Autel Maxisys Pro MS908P diagnostic scanner does a purge and seal test on 2009 GMC Yukon hybrid succ ...
- BUAAOO第二单元多线程电梯作业总结
第二单元多线程作业需要保证线程安全
- sublime包管理
安装 到https://packagecontrol.io/installation#st3拷贝 import urllib.request,os,hashlib; h = '2915d1851351 ...