SOURCE

const obj = {
    name:'张三',
    age:18
}

// 写在了原型上 即继承属性
obj.__proto__.sex = '男'

// 写在了自身上
Object.defineProperty(obj,"class",{value:1,enumerable:true})

/**
 * Object.keys() 
 * 获取自身的(不含继承的)所有可遍历( enumerable )属性的键名
 * 
 * for...in
 * 获取自身和原型上所有可遍历属性的键名
 */
console.log(Object.keys(obj))

for(let key in obj){
    console.log(key,obj.hasOwnProperty(key))
}

/**
 * hasOwnProperty
 * https://blog.csdn.net/weixin_39111384/article/details/112310856
 * 
 * Object.keys()
 * https://blog.csdn.net/weixin_46663768/article/details/106626685
 */
console 命令行工具 X clear

                    
>
console