开发者社区> 问答> 正文

采用[]操作符读取对象属性时,js解释器执行的动作是什么?

采用[]操作符读取对象属性时,js解释器执行的动作是什么?

展开
收起
真的很搞笑 2021-10-27 21:34:25 451 0
1 条回答
写回答
取消 提交回答
  • 采用obj[propertyName]的形式读取或创建对象属性时,解释器首先会检查propertyName是值类型字面量还是用户定义的变量,如果propertyName是值类型的字面量,则解释器自动将其转换为字符串后再读取或创建属性,如obj[1],obj[true]会被转换成obj["1"]、obj["true"].

    如果propertyName是变量名称(或者是表达式),则解释器会读取变量内容(或对表达式求值),如果变量的值是字符串,则直接读取属性,如果是其他类型的数据,则转换为字符串后再读取属性。

    2021-10-27 21:34:49
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript面向对象的程序设计 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载