JavaScript对象键匹配取值的语法名称及逻辑解析咨询
匿名对象属性访问的运作原理与官方名称
逻辑运作原理
这段代码的核心是创建匿名对象并立即通过方括号语法访问其属性,拆解步骤如下:
- 调用
typeToIcon('info')时,函数内部先创建一个包含键值对的对象:{ success: 'check', info: 'info-circle', warning: 'exclamation-circle', error: 'exclamation-triangle', } - 用
[type](此时type的值为'info')作为属性名,直接从刚创建的对象中取出对应属性值'info-circle' - 最后将该值作为函数返回值,因此
console.log会输出info-circle
这种写法本质是把对象当作键值对映射表,用输入参数作为键快速查找对应值,替代了传统的if-else或switch判断逻辑。
官方名称
这种写法没有专门的单一官方术语,是两个JavaScript核心特性的组合:
- 对象字面量(Object Literal):直接用
{}创建对象的语法 - 方括号属性访问器(Bracket Notation Property Accessor):通过
obj[key]的方式访问对象属性,支持用变量作为属性名,区别于.点语法
也有开发者约定俗成地称这种“即时创建对象映射并访问”的写法为即时对象映射访问,但这并非官方定义术语。
内容的提问来源于stack exchange,提问作者San
相关产品推荐
相关产品推荐

