JS中操作运算符和中括号运算符

本文探讨了JavaScript中点操作符和中括号操作符在对象属性访问上的差异,点操作符适用于常规属性名,而中括号操作符则允许使用变量或包含特殊字符的字符串作为属性名。此外,介绍了通过字面量和构造函数两种方式创建对象,以及对象的增删改查操作。最后,详细阐述了作用域链的概念,它确保了对执行环境中变量和函数的有序访问,以及标识符解析的过程。
摘要由CSDN通过智能技术生成

谈一谈点操作符和中括号操作符

对对象属性进行操作的时候,有两种方式点操作符、中括号操作符。

  1. 点操作符: 成员访问。


    obj.XXX: 只能把XXX当做字符串使用,并且不能是非法字符

  2. 中括号操作符: 中括号操作符完全随时可以使用。

    如果有一个属性名是 XXX,因为属性名是字符串类型,则获取方式为obj["XXX"]

    使用中括号的场景:

    1. key 是非法的 比如 obj["XXX-xxx"];
    2. key 是一个变量 var a = "name" obj[a];

创建对象的两种方法 及 对象的增删改查

创建对象:

  1. 字面量的方法 var o = {};
  2. 实例化的方式创建 var o = new Object();

对象的增、删、改、查:

  1. 增: 添加一个属性进去 obj.XXX=XXX;
  2. 删: delete obj.XXX;
  3. 改: 覆盖原有的属性obj.XXX=XXX;
  4. 查: 获取 obj.XXX 返回当前对象的XXX属性。

谈一谈作用域链

  1. 作用域链: 保证对当前执行环境有权访问的所有变量和函数的有序访问。
  2. 当函数声明的时候,就已经确定了作用域链,但是因为这个函数没有被调用,所以函数内部的变量对象没有生成,作用域链并没有完整。
  3. 当函数执行的时候,创建了自己的变量对象,并推到了作用域链的最前端,形成完整的作用域链。
  4. 作用域链的最前端一定是自身的执行环境的变量对象,作用域链的末端一定是全局的变量对象。
  5. 标识符的解析是沿着作用域链一级一级寻找的过程,如果寻找不到,则会报错。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值