zoukankan      html  css  js  c++  java
  • js中.和[]的区别

    在js中,对象属于是键值对的集合

    //例如
    const obj = {
        name: '残梦',
        say:function(){
            console.log('你好')
        }
    }

    在上面这个代码中,name就属于是key,而‘残梦‘就是value

    如何获取对象属性

    第一种方式: .语法

    • student.name 获取到student的name属性
    • student.say 获取一个函数

    第二种语法: []语法

    • student["name"] 等价于student.name
    • student["say"] 等价于student.say

    他们两者究竟有何差异呢?

    语法很方便,但是有很多的坑,比如:

    1. .后面不能使用js的关键字,例如:(class,this,function)
    2. .后面不能有数字
    var obj={};
    obj.this=5; //语法错误
    obj.0=10;   //语法错误
    • []使用更加广泛
    1. o1[name]
    2. [‘class‘],[‘this‘]也可以随意的去使用obj[‘this‘]=10
    3. [1],[2]也可以使用obj[3]=10
    4. 也可以这样用 ["{abc}"] 给对象添加了{abc}属性

    资源搜索网站大全 https://www.renrenfan.com.cn 广州VI设计公司https://www.houdianzi.com

    设置属性时的差异?

    • student[‘name‘] <=> student.name
    • 第一种设置的时候,如果student没有name属性,就会添加一个name属性
    • 但是第二种不会,所以一般更加推荐使用[]这种方式
  • 相关阅读:
    负数幅角的选取
    记一次py交易
    区间估计
    平方和
    正态总体 下常用结论
    每日一背
    乘积的期望
    java调用javascript
    Java Agent入门
    JavaPoet入门
  • 原文地址:https://www.cnblogs.com/xiaonian8/p/14096832.html
Copyright © 2011-2022 走看看