首页 > 解决方案 > 如果定义了对象,删除运算符是否总是返回 true?

问题描述

我有这个:

console.log(
   delete ({a: true}['a'])
);

那将记录true。但这也将是:

 console.log(
    delete ({a: true}['b'])
 );

我只是想使用一个单行来返回一个键在被删除之前是否存在于对象中。

看来我必须这样做?

  const v = {a: true};
  console.log(('b' in v) && delete v['b']);

如果对象中不存在,为什么delete运算符不返回 false ?'b'

标签: javascriptnode.js

解决方案


推荐阅读