javascript - 如何删除对象的第一个属性?
问题描述
如何删除对象的第一个属性,例如:
var obj = { x:1, y:2, z:3 };
这样obj
就变成了:
{ y:2 , z:3 };
这种方法对我不起作用:
delete obj.x
因为我不知道有关对象属性的任何详细信息。
我只需要删除第一个属性。
解决方案
在现代 JS 环境(ES2015+)中,键的顺序是明确定义的,因此您应该能够执行以下操作:
const keys = Reflect.ownKeys(obj); // thanks to Paulpro for improving this!
if (keys.length) delete obj[keys[0]];
请注意,这delete
并不总是有效,但对于大多数“正常”对象,这应该可以满足您的需要。
由于 JS 对象的顺序存在一些争议,这里是 ECMAScript 标准:https ://www.ecma-international.org/ecma-262/6.0/#sec-ordinary-object-internal-methods-and-internal-slots - 拥有属性键
推荐阅读
- python - 将 2D 列表转换为 1D 分组值列表的更好方法
- python - 使用 glob、os、shutil 和 tkinter 使用 python 的桌面管理器
- node.js - Discord Bot 数据库 (JAVASCRIPT)
- python - 如何将常量变量传递给函数
- linux-kernel - 如何使用 FF_CONSTANT 进行 Linux 的力反馈?
- chatbot - 在 rasa nlu 管道中结合预训练和监督嵌入
- react-native - React Native 创建一个应用程序,该应用程序将调用一个 API 使用线程并将其存储在某个文件中
- javascript - 在 React 中翻译字符串
- javascript - 属性变得未定义
- selenium - 如果我在 Jenkins 服务器中执行我的脚本,获取验证码