ECMA-262定义这些特性是为了实现JavaScript引擎用的,因此在JavaScript中不能直接访问他们,为了表示特性是内部值,ECMA-262规范把它们放在了两对方括号中,例如[[Enumerable...]]特性都被设置为true,而[[Value]]被设置为指定的值"张三";按照上面特性的描述,person对象中的name属性可以通过delete删除重新定义该属性,可以修改该属性的特性,可以把该属性修改为访问器属性...应为ECMA-262规范中提到属性的特性是为了实现JavaScript引擎所用到,所以我们不能通过JavaScript直接访问,但是JavaScript给我们提供了了一个方法,来操作我们需要操作的对象的属性的特性...,这个面向对象中的类属性大致一样!...最终的对象和上一段代码定义的对象相同。唯一的区别是这里的属性都是在同一时间创建的!上一段代码中定义的对象,实在定义完数据属性之后又定义了一个访问器属性。