首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS中的attribute和property

Property 每一个DOM节点,都是一个对象。像其他JS对象一样,DOM节点这类型HTMLElement对象,也可以添加一些方法或者属性。这些自定义添加的属性,就是property。...它只能被JS所读取,并不会影响HTML的展示。(它能被JS的for-in方法遍历出来,但innerHTML里面不会显示) ?...想操作DOM元素的的attribute,得依靠下列的JS接口 JavaScript elem.hasAttribute(name);// 判断是否存在 elem.getAttribute(name);...只能从Attribute单向同步到Property 例如表单元素input的value属性 从Attribute同步到Property ? Property却不能同步到Attribute ?...值可以任意类型的值 值只能是字符串 键名区分大小写 键名不区分大小写 在innerHTML里面不可见 在innerHTML里面可见 标准的DOM Properties会自动与Attributies同步,自定义的则不会

1.2K00
您找到你想要的搜索结果了吗?
是的
没有找到

使用@property

Python内置的@property装饰器就是负责把一个方法变成属性调用的: class Student(object): @property def score(self):..._score = value Try @property的实现比较复杂,我们先考察如何使用。...把一个getter方法变成属性,只需要加上@property就可以了,此时,@property本身又创建了另一个装饰器@score.setter,负责把一个setter方法变成属性赋值,于是,我们就拥有一个可控的属性操作...还可以定义只读属性,只定义getter方法,不定义setter方法就是一个只读属性: class Student(object): @property def birth(self):...小结 @property广泛应用在类的定义中,可以让调用者写出简短的代码,同时保证对参数进行必要的检查,这样,程序运行时就减少了出错的可能性。

54700

Kotlin 的 Property Delegate 与 Swift 的 Property Wrapper

... } 原来 getValue 和 setValue 还是运算符方法,其实这里我们甚至可以把它们定义成扩展方法,只要方法的类型符合要求就可以。...} } image 在定义时如果定义为 Bitmap?,那么在不需要的时候自然是可以置为 null 的,只不过用的时候每次都需要判空,感觉就很让人难受。...而如果定义成 Bitmap,用的时候倒是省事儿了,可是最后我们又无法将其置为 null。怎么办? 有人说你这个是伪需求,不置为 null 也不会有内存泄露。...delegator 函数是 x 的属性引用的扩展成员,定义也不复杂: [Kotlin] fun KProperty0.delegator(initializedValue: T?...Swift 的属性包装器(Property Wrapper) Swift 的属性包装器其实就是属性代理,最早推出这个特性的时候实际上也叫做 Property Delegate,但设计者们觉得 Property

5.2K20

python特性--property

定义一个类的时候,有时我们需要获取一个类的属性值,而这个属性值需要经过类中的其他属性运算来获得的。那么很容易,只要我们在类中定义一个方法,并且通过调用方法可以获取到那个需要运算的属性值。...显然,我们需要重新定义很多的函数来获取那些属性值。这样的类是很不友好的,其他人在调用你定义的类,需要做大量的修改。那么有没有什么解决的办法呢?python提供了一样东西:特性(property)。...我下面以一个例子说明property的用法。...读者会发现,我还定义了一个set_money函数和类属性money,那么它们究竟有什么用?从property的参数可以知道,有一个是get_money,就会我们上面想获得的付款金额。...特性property是一个强大的函数,虽然它的内部实现原理很简单,但在实际应用中,笔者认为还是很有用处的。就如我上面所说的需求下,用property可以很好地解决一些问题。

57820

JS数组定义及详解

JS数组定义及详解 一、总结 一句话总结:在js中,文本下标的数组元素,不计入数组长度,以文本下标形式添加到数组,实际是以属性形式添加到数组对象中的。...二、JS数组定义及详解 1、什么是数组 数组就是一组数据的集合 其表现形式就是内存中的一段连续的内存地址 数组名称其实就是连续内存地址的首地址 2、关于js中的数组特点 数组定义时无需指定数据类型 数组定义时可以无需指定数组长度...数组可以存储任何数据类型的数据(比如说一个元素保存整型,一个元素保存字符串型,这个在JS中是可以的) 创建数组的语法: var arr=[值1,值2,值3];...//隐式创建 var arr=new Array(值1,值2,值3); //直接实例化 var array=new Array(size); //创建数组并指定长度 JS中符号含义...[0] = 1; 12 arr3[1] = 2; 13 arr3[2] = 3; 14 document.write(arr3[2] + ''); 3、关于数组长度 数组对象.length 在js

3.4K40

Python中的property类和@property装饰器

一、property类的使用 property的中文意义就是属性、性质,在python中主要用来为属性操作提供便利。...在Python中,提供了一个叫做property的类,通过创建property类的对象,来将私有属性设置成普通的属性,可以不再使用属性的get方法的调用方式,而像普通的公有属性一样去使用属性。...__person # 通过创建property的对象,将私有方法变成一个属性给外部访问 name = property(__get_name) # 通过创建property的对象...利用@property装饰器,可以用来简化使用property类的方法。 class City(object): def __init__(self): self....3.如果一个属性同时有set/get方法,那么要先实现@property对获取方法的定义,再实现设置方法的定义定义set方法时使用 @xxx.setter装饰,xxx要和获取方法名保持一致。

95040
领券