//创建一个猫类
function Cat(name,color,eyeColor){
//上面处Cat首字母大写表示创建一个‘类别’叫Cat类。假如首字母小写cat则是创建一个cat的函数;

this.catName=name;
this.catColor=color;
this.catEyeColor=eyeColor;

}

var xiaohua=new Cat("小花","花色","金黄色");
var xiaohei=new Cat("小黑","黑色","蓝色");
var xiaobai=new Cat("小白","白色","绿色");

alert(xiaobai.catEyeColor);        //得:绿色

对象:

  猫是一个对象,狗是一个对象,那么你家猫叫小花,我家猫叫小白,那么小花和小白就是猫的两个实例。

  每个对象都有属性,而一个对象的属性名肯定都一样

比如,猫对象,它的属性就有,猫的名字、毛色、眼睛颜色、猫的种类等等;(如上面例子:name,color,eyeColor)

  这个猫对象是对所有猫来说都有这些个属性,但是具体这些属性什么值我们是通过实例来赋予的(例如:"小花","花色","金黄色")

 

  所以就有function(name,color)

        {this.catName=name;
        this.catColor=color;};

 

  然后就是通过对象创建一个实例,实例是对象的具体表现。比如小花||花色||金黄色都是一个猫的具体表现。

this:function(name,color),这个括号里面的name和color是外边传递过来的参数

    但是function Cat(name,color){}

    这个name和color,这会儿就不是这个Cat对象的属性,而只是一个参数。

     那么我们就在这个函数的{}内部通过this获取Cat对象本身 ,给Cat对象指定一个name属性,那么就是说,在Cat对象里面写this.catName;就等于 Cat.name
 
 
 

new:

     new就是创建实例的意思
     var xiaohua=new Cat("小花","花色","金黄色");这句话就是创建一个叫 “xiaohua” 的 “Cat”对象的“ 实例” 
    因为我们一般创建都是 var xiaohua=new Cat("小花","花色","金黄色"); 所以这就是说,给 “Cat”对象中的属性赋值,而括号中双引号中的内容("小花","花色","金黄色")就是要赋值进去给“Cat的内容
    这时候, “Cat‘这个对象的各个属性就有了值,而不只是一个属性名。
     而这时候我们又通过等号将这个有了属性的“Cat‘赋值给“xiaohua”,那么这个“Cat‘的属性就成为了“xiaohua”的属性
     所以说有属性值得“xiaohua”就是“Cat‘对象的实例
 
 

关于对象和this、new的更多相关文章

  1. 如何一步一步用DDD设计一个电商网站(九)—— 小心陷入值对象持久化的坑

    阅读目录 前言 场景1的思考 场景2的思考 避坑方式 实践 结语 一.前言 在上一篇中(如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成),有一行注释的代码: public interfa ...

  2. javascript中的Array对象 —— 数组的合并、转换、迭代、排序、堆栈

    Array 是javascript中经常用到的数据类型.javascript 的数组其他语言中数组的最大的区别是其每个数组项都可以保存任何类型的数据.本文主要讨论javascript中数组的声明.转换 ...

  3. 探究javascript对象和数组的异同,及函数变量缓存技巧

    javascript中最经典也最受非议的一句话就是:javascript中一切皆是对象.这篇重点要提到的,就是任何jser都不陌生的Object和Array. 有段时间曾经很诧异,到底两种数据类型用来 ...

  4. Asp.Net WebApi核心对象解析(下篇)

    在接着写Asp.Net WebApi核心对象解析(下篇)之前,还是一如既往的扯扯淡,元旦刚过,整个人还是处于晕的状态,一大早就来处理系统BUG,简直是坑爹(好在没让我元旦赶过来该BUG),队友挖的坑, ...

  5. JS核心系列:浅谈原型对象和原型链

    在Javascript中,万物皆对象,但对象也有区别,大致可以分为两类,即:普通对象(Object)和函数对象(Function). 一般而言,通过new Function产生的对象是函数对象,其他对 ...

  6. Chrome出了个小bug:论如何在Chrome下劫持原生只读对象

    Chrome出了个小bug:论如何在Chrome下劫持原生只读对象 概述 众所周知,虽然JavaScript是个很灵活的语言,浏览器里很多原生的方法都可以随意覆盖或者重写,比如alert.但是为了保证 ...

  7. XStream将java对象转换为xml时,对象字段中的下划线“_”,转换后变成了两个的解决办法

            在前几天的一个项目中,由于数据库字段的命名原因 其中有两项:一项叫做"市场价格"一项叫做"商店价格" 为了便于区分,遂分别将其命名为market ...

  8. ASP.NET内置对象的总结

    1. Response对象可形象的称之为响应对象,用于将数据从服务器发送回浏览器. 实例源码:链接: http://pan.baidu.com/s/1dDCKQ8x 密码: ihq0  2. Requ ...

  9. ADO.NET对象的详解

    1. Connection 类 和数据库交互,必须连接它.连接帮助指明数据库服务器.数据库名字.用户名.密码,和连接数据库所需要的其它参数.Connection对象会被Command对象使用,这样就能 ...

  10. 对Castle Windsor的Resolve方法的解析时new对象的探讨

    依赖注入框架Castle Windsor从容器里解析一个实例时(也就是调用Resolve方法),是通过调用待解析对象的构造函数new一个对象并返回,那么问题是:它是调用哪个构造函数呢? 无参的构造函数 ...

随机推荐

  1. C语言Printf格式

    使用printf打印时发现,如果数据类型和打印使用的类型不一致,结果就是混乱的. 这是因为printf本身并不进行数据的类型转换,他只是把输入按照给定的数据格式输出,如果二者不匹配,那么由于不同数据类 ...

  2. ODI利用goldengate实现增量数据捕获

    ODI利用goldengate实现增量数据捕获 上个月,Oracle发布了ODI的最新版本10.1.3.6_02,其中增加了针对采用goldengate获取源数据库增量变化的知识模块,这样当系统需要实 ...

  3. Flex4开发笔记(与JAVA交互)

    (由于本人也是第一次接触flex开发,因此将开发过程中问题记录留档) 一.数据交换过程 借助BlazeDS可以实现flex与java之间的数据交互,大体流程如下: 1.导入blazeds的文件(配置w ...

  4. 供应类型与计划分类一致性检查(PO)

    应用 Oracle   Purchasing 层 Level Function 函数名 Funcgtion Name CUXPOIMM 表单名 Form Name CUXPOIMM 说明 Descri ...

  5. sql server 2012 镜像和出现的问题

    镜像安装的环境: 主机:win server 2012 , sql server 2012 ,ip:192.168.1.189  PC账户:administrator 备机:win server 20 ...

  6. bootstrap栅格系统的div高度怎样定?

    不能直接写px,不同设置分辨不同,div宽度始终是满屏的,如果高度指定像素大小,div就不能保证长宽比例恰当了. 解决方法: height:0px;padding-bottom:100%

  7. Dreamweaver中打开CodeSmith文件

    电脑环境:Windows2008+Dreamweaver 8英文版本 问题描述:Dreamweaver中默认打开文档时不支持打开CodeSmith模板文件对应的.cst后缀名文件,截图如下: 解决步骤 ...

  8. Android Resource介绍和使用

    1. 相关文件夹介绍 文件 取值方式 string.xml getResource().getString(resourceId)或者getResource().getText(resourceId) ...

  9. Maven真——聚合和继承(于)

    依赖管理 我们谈论继承一个dependencies因素,我们非常easy这个特性被认为是适用于accout-parent于. 子模块account-email和account-persist同一时候依 ...

  10. IHttpModule与IHttpHandler的区别整理

    IHttpModule与IHttpHandler的区别整理1.先后次序.先IHttpModule,后IHttpHandler. 注:Module要看你响应了哪个事件,一些事件是在Handler之前运行 ...