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

JS中获取对象最后一个键为何需使用length-1?

为什么获取对象最后一个键要减1?
  • 首先明确Object.keys(myObject)的返回值:它会把对象的键转换成从0开始索引的数组。
  • 数组的length属性是元素的总个数,但数组索引是从0开始计数的——比如有3个元素的数组,索引是0、1、2,对应的length是3。
  • 所以要取最后一个元素,必须用length - 1来拿到最后一个元素的索引。如果直接用length当索引,相当于去访问数组里不存在的位置,自然返回undefined。

举个实际例子:

const myObject = { name: 'Alice', age: 25, city: 'Beijing' };
const keys = Object.keys(myObject); // 得到 ['name', 'age', 'city']
console.log(keys.length); // 输出3
console.log(keys[3]); // 输出undefined,因为数组最大索引是2
console.log(keys[2]); // 输出'city',也就是最后一个键

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 21:45:53