在浏览器控制台中输出js对象,为什么颜色不同,有深有浅

打开console,输入自定义的javascript对象的时候,打开看发现对象的属性是深紫色,后面有一些对象是浅紫色的,比如Array对象和一堆SVG,HTML,CSS开头的对象,常用的prototype和__proto__也是浅紫色的。

请问这里深紫和浅紫的有什么区别呢?

如图所示,obj对象深颜色属性表示可枚举属性,obj对象浅颜色属性表示不可以枚举。

可枚举属性:可以通过for...in...遍历的属性,自己给对象添加的属性可以遍历,而原型上的属性一般不可以遍历。

不可枚举属性:不能通过for...in...遍历的属性。

如何判断一个属性是否为可枚举属性?

如图所示,返回的是true表示这个属性是可枚举的,false表示不可以枚举。

相关推荐
安大小万9 分钟前
C++ 学习:深入理解 Linux 系统中的冯诺依曼架构
linux·开发语言·c++
随心Coding13 分钟前
【零基础入门Go语言】错误处理:如何更优雅地处理程序异常和错误
开发语言·后端·golang
T.Ree.17 分钟前
C语言_自定义类型(结构体,枚举,联合)
c语言·开发语言
Channing Lewis19 分钟前
python生成随机字符串
服务器·开发语言·python
小熊科研路(同名GZH)1 小时前
【Matlab高端绘图SCI绘图模板】第002期 绘制面积图
开发语言·matlab
鱼是一只鱼啊1 小时前
.netframeworke4.6.2升级.net8问题处理
开发语言·.net·.net8
Tanecious.1 小时前
C语言--数据在内存中的存储
c语言·开发语言·算法
咸甜适中1 小时前
go语言gui窗口应用之fyne框架-动态添加、删除一行控件(逐行注释)
开发语言·后端·golang
去往火星1 小时前
opencv在图片上添加中文汉字(c++以及python)
开发语言·c++·python