【JavaScript】-- 对象

对象是什么?

在JavaScript中,所有事物都是一个对象。

每个对象都有自己的属性,其中包含的属性值也各不相同。

每个对象都是一个变量,但是对象可以拥有多个值(多个变量),

每个值以key:value键值对的方式呈现。

 对象的创建

对象的创建有两种方式:字面量模式、构造函数

字面量模式

用 {} 包裹起来,属性之间用  “ , ” 隔开, 属性名和属性值之间用 “ : ”  隔开 

var person = {
    name:"zzy",
    age:17,
    color:"orange",
    sayname: function(){
        console.log("My name is", this.name);
    }
}

构造函数模式

使用Object或者使用自定义函数来初始化对象

var person1 = new Object();
person1.name = "labi";
person1.age = 17;
person1.Sayname = function(){
    console.log(this.age);
}

// 等价于

var person1 = {};
person1.name = "labi";
person1.age = 17;

new关键字的执行过程

  1. new构造函数可以在内存中创建了不空的对象
  2. 构造函数里面的this都会指向新创建的对象
  3. 执行构造函数里面的代码,给这个空对象添加属性和方法
  4. 返回该对象

 

对象的访问

属性访问

  • 点访问:

点后面直接跟的是对象的属性,如果属性存在可以访问到,如果属性不存在,得到undefined

  • 中括号访问:

括号 中 放的是变量,中括号可以将该变量进行解析。

obj.name      
obj['name']     //'zzy'
name = "age"
obj['age']      //17

方法的访问

方法的访问主要是为了执行该对象中的方法,需要按照函数调用的方式去使用

//以下执行结果不一样
obj.sayName;
obj.sayName();// 方法的正确使用

遍历对象中的属性

普通版的for循环可以遍历数组,但无法遍历对象

增强版的for循环:

for..in用于遍历数组或者对象的属性

// 数组
var arr = ['a', 123, 7]
// 对象
var obj = {name:'zhangsan', age:17}
// for-in 遍历数组
for(var index in arr){
    console.log(arr[index]);
}
// for-in 遍历对象
for(var key in obj){
    console.log(key + '--' + obj[key]);
}

新增删除属性

  • 只能删除对象的自有属性
delete obj.pro // 可以通过点访问删除
delete obj[“proname”]  // 可以通过中括号访问删除
delete obj.sayName     //从obj对象中删除sayName属性
  • 新增属性
obj.要新增的属性名=”属性值”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值