JavaScript 对象

1. 对象

对象是一个具体的事务,万物皆对象
在JS中,对象是一组无序的相关属性方法的集合,所有的事务都是对象,例如字符串、数值、数组和函数等。
对象是由属性和方法组成的

  • 属性:事务的特征,在对象中用属性来表示(常用名词)
  • 方法:事务的行为,在对象中用方法来表示(常用动词)
  • 如图形象表示对象的属性和行为
    在这里插入图片描述
    保存一个值可以用变量
    保存一组值可以用数组
    而要保存一个人的完整信息就需要用到对象了,JS中的对象表达结构更清晰,更强大。

2. 创建对象的三种方式

1. 利用 字面量 创建对象

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

  1. 语法
  • 里面的属性或者方法采取的是键值对的形式, 键 属性名: 值 属性值
  • 多个属性或方法用逗号隔开
  • 方法冒号后面跟的是一个匿名函数
  1. 使用对象
    (1)调用对象的属性 对象名.属性名
    (2)另一种调用属性的方式: 对象名[‘属性名’]
    (3)上面两种调用属性方式都重要,都要学会使用
    (4)调用对象的方法 对象名.方法名()

demo

var keke ={
   
  dogName: '可可',
   type: '阿拉斯加',
   age: 5,
   color: 'brown',
   bark: function(){
   
       console.log('汪汪汪');
   },
   showFilm: function(){
   
       console.log('演电影');
   }
}
console.log(keke);
2 利用 new Object 创建对象
  • 利用 = 赋值的方法 添加对象的属性和方法
  • 每个属性和方法用分号结束
  • 调用的方法上面是一样的
var obj = new Object();
obj.uname = '鸣人';
obj.sex = '男';
obj.age = 19;
obj.skill = function(){
   
    console.log('影分身术')
}
console.log(obj)
3 构造函数 创建对象

前面两种创建函数的方式都只能一次创建一个对象,创建多个对象里面的属性和方法是大量相同的,我们可以利用函数的方法,重复这些相同的代码,我们就把这个函数称为构造函数(函数里面封装的是对象)。
构造函数:就是把对象里面一些相同的属性和方法抽象出来封装到函数里面

要点

  • 构造函数 名字首字母要大写
  • 构造函数不需要return 就可以返回结果
  • 调用构造函数 必须使用new
  • 只要new 调用了函数就创建一个对象
  • 属性和方法前面 必须添加this

demo

function Star(uname, age, sex){
   
    this.name = uname;
    this.age = age;
    this.sex = sex;
    this.sing = function(sang){
   
        console.log(sang);
    }
}
var ldh = new Star('刘德华', 18, '男'); // 调用构造函数返回的是一个对象
ldh.sing('冰雨'); //调用方法
console.log(typeof ldh);

构造函数和对象

  • 构造函数 泛指某一大类
  • 对象 是一个具体的事物
  • 利用构造函数创建对象的过程 称为对象的实例化

变量、属性、函数和方法总结

  • 变量和属性的相同点,他们都是用来存储数据
  • 变量 单独声明并赋值 使用的时候直接写变量名 单独存在
  • 属性 在对象里面 不需要声明 使用的时候必须加上对象
  • 函数和方法的相同点 都是实现某种功能 做某件事
  • 函数是单独声明 并且调用的 函数名() 单独存在
  • 方法 不需要声明在对象里面 调用的时候 对象.方法()

3. new关键字

new 关键字的执行过程

  1. new 构造函数可以在内存中创建一个空的对象
  2. this 会指向刚创建的空对象
  3. 执行函数里面的代码,给这个空对象添加属性和方法
  4. 返回这个对象(所以构造函数里不需要return)

4.遍历对象属性

for…in 遍历对象

var keke ={
   
   dogName: '可可',
    type: '阿拉斯加',
    age: 5,
    color: 'brown',
    bark: function(){
   
        console.log('汪汪汪');
    },
    showFilm: function(){
   
        console.log('演电影');
    }
}
// 遍历对象
for (var k in keke) {
   
    console.log(k); //k 变量 不需要赋值 得到 属性名
    console.log(keke[k]); // keke[k] 得到属性值
}

在这里插入图片描述

5.内置对象

1. 内置对象概念

JS中对象分为3种:自定义对象(上面学的),内置对象,浏览器对象
前面两种是js基础内容, 属于ECMAScript,第三个浏览器对象是JS独有的
内置对象:指JS语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或者是最基本而必要的功能(属性和方法)。优点就是帮助我们快

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值