变量 instanceof 类型的名字----->布尔类型,true就是这种类型,false不是这种类型
在当前的对象的方法中,可以使用this关键字代表当前的对象
 
1.调用系统的构造函数创建对象
  var 变量名= new Object(); Object 是系统的构造函数 Array
    添加属性-----如何添加属性? 对象.名字=值;   
    修改属性-----如何修改属性? 对象.名字=值;
    添加方法-----如何添加方法? 对象.名字=函数;
    属性调用-----对象名.属性 或者 对象名[“属性名”];
    方法调用-----对象名.方法名
//有一个黄色的小狗,叫大黄,今年已经三岁了,250斤的重量每次走路都很慢,喜欢吃大骨头
var dog = new Object();
dog.name = "大黄";
dog.age = 3;
dog.weight = 250;
dog.walk = function () {
console.log(this.name + "它" + this.weight + '斤' + '走路很慢');
console.log(this.name + '喜欢吃大骨头');
}//this 目前是指 谁调用这个函数就指向谁 更加深层的还不知道
console.log(dog.name);
console.log(dog.age);
console.log(dog.weight);
dog.walk();
2.自定义构造函数创建对象(结合第一种和需求通过工厂模式创建对象)

//如何一次性创建多个对象?把创建对象的代码封装在一个函数中
//工厂模式创建对象
function createObject(name, age, sex) {
  //创建对象
  var obj = new Object();
  //添加属性
  obj.name = name;
  obj.age = age;
  obj.sex = sex;
  //添加方法
  obj.walk = function () {
    console.log(this.name + " " + '性别:' + this.sex + " " + "今年:" + this.age + " " + "爱走路");
  };//在当前的对象的方法中,可以使用this关键字代表当前的对象
  return obj;//注意 注意 一定记得把obj返回
  }
//创建第一个对象
var xiaohong = createObject("小红", 18, "女");
xiaohong.walk()
//创建第二个对象
var xiaoming = createObject("小明", 28, "男");
xiaoming.walk()
 
//自定义构造函数创建对象,我要自己定义一个构造函数,自定义构造函数,创建对象
//函数和构造函数的区别;名字是不是大写(首字母是大写)
//自定义狗的构造函数,创建对象
function Dog(name, age, sex) {
this.name = name;
this.age = age;
this.sex = sex;
this.chi= function() {
console.log("它叫"+this.name+" " + '今年:' + this.age +"岁"+ ' ' + this.sex);
}
}
//自定义构造函数创建对象:先自定义一个构造函数,创建对象
var dabai = new Dog("大白","3","公");//记得这里得用 new 创建对象
dabai.chi();
3.字面量的形式创建对象
var obj ={
name:"小明",//直接设置属性 中间用逗号隔开
age:18,
eat: function(){
console.log("吃饭了");
},//方法也直接设置
sayHi:function(){
console.log("我是"+this.name+" "+"我今年"+this.age)
}
}
obj.eat();
obj.sayHi();
 

JS 对象的三种创建方式的更多相关文章

  1. js对象的几种创建方式和js实现继承的方式[转]

    一.js对象的创建方式 1. 使用Object构造函数来创建一个对象,下面代码创建了一个person对象,并用两种方式打印出了Name的属性值. var person = new Object(); ...

  2. 请列举出JS对象的几种创建方式?

    javascript创建对象简单的说,无非就是使用内置对象或各种自定义对象,当然还可以用JSON:但写法有很多种,也能混合使用. 1.对象字面量的方式 var person={firstname:&q ...

  3. 2019年6月14日 Web框架之Django_07 进阶操作(MTV与MVC、多对多表三种创建方式、前后端传输数据编码格式contentType、ajax、自定义分页器)

    摘要 MTV与MVC 多对多表三种创建方式 ajax ,前后端传输数据编码格式contentType 批量插入数据和自定义分页器 一.MVC与MTV MVC(Model View Controller ...

  4. 多对多的三种创建方式-forms相关组件-钩子函数-cookie与session

    多对多的三种创建方式 1.全自动(推荐使用的**) 优势:第三张可以任意的扩展字段 缺点:ORM查询不方便,如果后续字段增加更改时不便添加修改 manyToManyField创建的第三张表属于虚拟的, ...

  5. 面向面试编程——javascript对象的几种创建方式

    javascript对象的几种创建方式 总共有以下几个模式: 1.工厂模式 2.构造函数模式 3.原型模式 4.混合构造函数和原型模式 5.动态原型模式 6.寄生构造函数模式 7.稳妥构造函数模式 1 ...

  6. JavaScript 闭包的详细分享(三种创建方式)(附小实例)

    JavaScript闭包的详细理解 一.原理:闭包函数--指有权访问私有函数里面的变量和对象还有方法等:通俗的讲就是突破私有函数的作用域,让函数外面能够使用函数里面的变量及方法. 1.第一种创建方式 ...

  7. Django-多对多关系的三种创建方式-forms组件使用-cookie与session-08

    目录 表模型类多对多关系的三种创建方式 django forms 组件 登录功能手写推理过程 整段代码可以放过来 forms 组件使用 forms 后端定义规则并校验结果 forms 前端渲染标签组件 ...

  8. django----多对多三种创建方式 form组件

    目录 多对多三种创建方式 全自动 全手动 半自动 form组件 基本使用 form_obj 及 is_valid() 前端渲染方式 取消前端自动校验 正则校验 钩子函数(Hook方法) cleaned ...

  9. Django框架(十)--ORM多对多关联关系三种创建方式、form组件

    多对多的三种创建方式 1.全自动(就是平常我们创建表多对多关系的方式) class Book(models.Model): title = models.CharField(max_length=32 ...

随机推荐

  1. Python函数定义及传参方式

    主要内容:     1.函数初识     2.函数传参方式        (1)位置参数        (2)默认参数        (3)关键参数        (4)非固定传参 一.函数初识 1. ...

  2. solrcloud使用问题记录

    Solr Ping query caused exception: undefined field text [java] view plaincopy <span style="fo ...

  3. 高性能的城市定位API接口

    如果不需要精准的定位,还有一种通过IP地址获取当前城市的方法,采用新浪的api接口. <script src="http://int.dpool.sina.com.cn/iplooku ...

  4. Java-Decimal

    import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; public c ...

  5. 面试题:SpringMVC的工作流程

    SpringMVC是当今最主流的Web MVC框架,没有之一,要做一名合格的JavaWeb工程师,学好它势在必行! 与Struts2原理不同,SpringMVC是通过最基础最传统的servlet来实现 ...

  6. Glade编程

    一.简介 如果有一种软件能将图形界面的设计及时地展现于开发人员的面前,而且在设计完后能直接看到界面的外观效果,这样就使程序员的主要精力集中于应用程序核心功能的开发上,这就是所谓的可视化编程思想.   ...

  7. html页面的局部刷新

    有时候我们在做一个动态/静态网页,网页中的某部分需要从服务器获取值但是不能把整个页面都提交到服务器,也就是要对页面做局部刷新,也就是对整个网页无刷新更新值.在这种情况下就需要用JS和XMLHttpRe ...

  8. Entity Framework Tutorial Basics(41):Multiple Diagrams

    Multiple Diagrams in Entity Framework 5.0 Visual Studio 2012 provides a facility to split the design ...

  9. AIO和NIO的理解

    AIO: AIO 背后的基本思想是允许进程发起很多 I/O 操作,而不用阻塞或等待任何操作完成,可以继续做 另外的事情,等I/O操作完成,内核会通过函数回调或者信号机制通知用户进程.这样很大程度提高了 ...

  10. up6-chrome 45+安装教程

    up6-Chrome 45+安装说明 说明:只需要安装up6.exe即可,up6.exe为插件集成安装包. 1.以管理员身份运行up6.exe.up6.exe中已经集成Chrome 45插件.