JS对象学习

对象介绍

对象是什么:对象是一种复杂数据类型。

.对象作用:以键值对方式存储多个数据。

对象和数组异同点

相同点:都是复杂数据类型,都可以存储多个数据。            不同点:存储方式不同。

数组:有序存储。                                                                  对象:无序存储(键值对)。

需求:存储一个人的信息(姓名,年龄,性别)

使用基本数据类型

let name ='s'
  let age = 18
  let sex = 'nan'

好处:阅读性高    弊端:沉余

使用复杂数据类型-数组

let arr = ['班长',18,'男'] 
console.log(arr);

好处:一个变量存储多个数据   弊端:阅读性不高

使用对象

let obj = { name:'班长',age:38, sex:'男'}

对象语法

 声明对象

let 对象名={

    属性名:属性值,

    属性名:属性值,

}

取值语法

对象名.属性名

 let obj = {
            name: '王子',
            age: 19,
            gfs: ['苍老师', '黑泽', '赤木'],
            sayhi: function () {
                console.log(111);
            },
        }
        console.log(obj);
        console.log(obj.name); 
        console.log(obj.age);
         console.log(obj.gfs);
        console.log(obj.gfs[2]); 
        console.log(obj.sayHi);
         console.log(obj.sayHi());

 细节:对象中的属性值是什么数据类型,取出来的时候就可以使用这个类型的所有语法。

如:对象中的属性值是 数组,则可以:对象名.属性名[下标]

如:对象中的属性值是 函数,则可以:对象名.属性名()

对象操作

1.查询语法(属性名存在,获取属性值;属性名不存在,获取underfined)

a.点语法 对象名.属性名

 b.[]语法 对象名['属性名']

 a.点语法 对象名.属性名

console.log(obj.name );//班长 
console.log(obj.age );//18
 console.log(obj.sex );//男
console.log(obj.country);//undefined

b.[]语法对象名['属性名']

console.log(obj['sex'] );//男

2.修改属性

a.对象名.属性名 = 值

b.对象名['属性名'] = 值

obj.name ='李四'; 
obj['age'] = 20;
console.log(obj);//{name:'李四',age: 20,sex:'男'}

3.新增属性

a.如果对已经存在的属性赋值,则是修改

b.如果对不存在的属性赋值,则是新增

obj.hobby ="学习"
console.log(obj);//{name:'李四",age:20,sex:"男',hobby:'学习'}

4.删除对象属性

delete 对象名.属性名

delete obj.age
console.log(obj);//{name:'李四",sex:'男',hobby:'学习'}

对象遍历

遍历数组:for循环

       for(let i= 0; i<arr.length;i++){arr[i]}

遍历对象:特殊的for-in循环(专门用于遍历对象)

       for(let key in 对象名){对象名[key]}


     let obj = {
         name:'王子',
         age:18,
         sex:'男',
         hobby:'学习'
     }      

     for(let key in obj){
         console.log(key);
         console.log(obj[key]);
     }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值