You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript返回语句中[]的含义、能否移除及类型判定问题

问题解答

1. 返回语句中[]的含义

这里的[sortField]是ES6对象字面量的计算属性名语法,作用是把变量sortField的实际值作为对象的属性名,而非把字符串"sortField"固定当作属性名。比如如果sortField的值是"createTime",返回的对象就会是{ _id: item._id, createTime: item.createTime },属性名由变量值动态决定。

2. 能否将[sortField]: item[sortField]修改为sortField: item.sortField?

绝对不能,两者逻辑完全不同:

  • 原写法[sortField]: item[sortField]:属性名是sortField变量的值,属性值是item对象中对应该变量值的属性内容;
  • 修改后的sortField: item.sortField:属性名固定为字符串"sortField",属性值是item对象中名为"sortField"的属性内容(若item无此属性,值为undefined)。

这会直接导致生成的nextKey对象不符合分页逻辑的需求。

3. 该语法属于数组还是对象语法?

这是对象语法,是ES6对对象字面量的增强特性,和数组无关。数组的[]用于定义数组或访问数组元素,而这里是在对象字面量里用[]定义动态属性名。

内容的提问来源于stack exchange,提问作者truongt2

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 17:38:10