В первом случае bar
не объявляется. Но во втором случае bar
объявляется и определяется как undefined
.
Довольно сложно, способ его найти, если вы используете Object.keys(obj)
, вы не можете найти bar
.
Кроме того, использование obj.hasOwnProperty('bar')
даст вам false. Благодаря deceze ♦ за указание наружу.
const obj = { foo: "foo" };
// console.log(obj); // { foo: 'foo' }
// console.log(obj.bar); // undefined
const obj2 = { foo: "foo", bar: undefined };
// console.log(obj2); // { foo: 'foo', bar: undefined }
// console.log(obj2.bar); // undefined
console.log(Object.keys(obj));
console.log(Object.keys(obj2));
console.log(obj.hasOwnProperty('bar'));
console.log(obj2.hasOwnProperty('bar'));