欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS使用xxx.index=0和xxx.setAttribute(‘index’,0)这两种设置自定义属性的区别?

程序员文章站 2022-07-02 17:57:33
在JS中有两种设置自定义属性的的方式: 第一种是 xxx.index:是把当前元素当做一个普通对象,为其设置一个属性名(和页面中HTML没有关系)。 第二种是 xxx.setA...

在JS中有两种设置自定义属性的的方式:

第一种是 xxx.index:是把当前元素当做一个普通对象,为其设置一个属性名(和页面中HTML没有关系)。
第二种是 xxx.setAttribute:是把元素当做特殊元素来处理,设置的自定义属性是和页面结构中的DOM元素映射在一起的。

在JS获取DOM的元素对象,我们可以理解为两种角色
与页面中的HTML结构无关的普通对象
与页面HTML结构的存在映射关系的元素对象

元素对象的自定义属性:xxx.index=0
仅仅是把JS对象中增加一个属性名(自定义的),和页面中HTML没有任何关系(在结构是看不见的)。

xxx.setAttribute:通过这种方式设置的内置属性和之前提到的内置属性差不多,都是和HTML结构存在映射关系的(设置自定义属性是可以呈现在结构上的)。