对象的创建

对象的含义

在现实中:万物皆对象,对象是一个具体的事物,看得见摸得着的实物,一个数据库,一张网页、一个远程服务器的连接也可以是‘对象’。

在JavaScript 中,对象是一组无序的相关属性方法的集合,所有实物都是对象,例如:字符串、数值、数组、函数等

属性:事物的特征,在对象中用属性来表示(常用名词)

方法:事物的行为,在对象中用方法来表示(常用动词)

为什么需要对象

保存一个值时,可以使用变量,保存多个值(一组值)时,可以用数组。但是要保存一个人的完整信息呢?

例如:将‘张三’的个人信息保存在数组中的方式为:

var arr = ['张三','男',128,154];

js中 的对象表达结构更清晰,更强大,张三的个人信息在对象中表达结构如下:

张三 . 姓名 = '张三';            person . name = '张三';
张三 . 性别 = '男';                person . sex = '男';
张三 . 年龄 = 23;                person . age = 23;
张三 . s身高 = 154;               person . height = 154;

创建对象的三种方式

在JavaScript 中,现阶段我们可以采用三种方式创建对象(object):

1、利用字面量创建对象(最常见)

        对象字面量:就是花括号{ } 里面包含了表达这个具体事物(对象)的属性和方法

{ } 里面采用了键值对的形式表示

                键 : 相当于属性名

                值 : 相当于属性值,可以是任意类型的值 (数字型 、字符串型、 布尔类型、 函数类型等)

var obj = {
    uname:'张三',//属性
    age:18,
    sex:'男',
    sayHi:function(){//方法
        console.log('hi~');
    
    }

}
(1)里面的属性或者方法 采取的是键值对的形式 键 属性名 : 值 属性值
(2)多个属性 或者方法 中间用逗号隔开
(3)方法 冒号后面跟的是一个匿名函数

使用对象

 (1)调用对象的属性 我们采取 对象名 . 属性名  (冒号.)  .  我们可以理解为  :的

console.log(obj.uname);

(2)调用属性还有一种方式   对象名['属性名'] 

console.log(obj['age']);

(3)调用对象的方法  sayHi 对象名.方法名()  不要忘记添加小括号

obj.sayHi();

2、利用new Object 创建对象 

var obj = new Object();
			obj.uname = '张三';
			obj.age = 18;
			obj.sex = '男';
			obj.sayHi = function(){
				console.log('hi');
			}
利用 等号 = 赋值 的方法 添加对象的属性和方法
每个 属性 和方法 之间用分号结束
        console.log(obj.uname);
        console.log(obj['sex']);
        obj.sayHi();

3、利用构造函数 创建对象

因为前面两种的创建对象一次只能创建一个对象 

因此可以利用函数的方法 重复相同代码  把这个函数称为构造函数

又因为这个函数不一样 , 里面分装的不是普通代码 ,而是  对象

构造函数 就是把对象里面一些相同的 属性 和  方法 抽象出来分装到函数里面

function 构造函数名(){
    this.属性 = 值;
    this . 方法 = function(){
    }
}
        new 构造函数名();

1、构造函数名的首字母必须要大写
2、构造函数不需要return 就可以返回结果
3、调用函数 必须使用  new
4、我们只要 new 构造函数名()调用函数就创建一个对象
5、属性 和 方法 前面必须添加 this
练习,用构造函数创建廉颇和后裔两个英雄对象
function Man(name,type,blood){
				this.name = nam
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值