添加属性用setAttribute()方法,可以传入两个参数,第一个是属性名称,第二个是要设置的属性值
var li = document.getElementsByTagName('li')[0]//设置 li 属性,如 data-falg,设置为true
li.setAttribute("data-falg", "true")
也可以获取属性用getAttribute(),传入一个参数,是想获取的属性名称,返回的是该属性的值
简单的补个例子上,希望楼主能把addMethods的第二个参数大致有几种情况写清楚。
我再把我的答案补充完整
//判断类型的方法var isType = function(object) {
return Object.prototype.toString.call(object)
.match(/^\[object\s(.*)\]$/)[1]
}
var addMethods = function(obj, arr){
if(isType(obj) !== 'Object'){
return alert('第一个参数必须是对象!')
}
//TODO
}
解释你追问中的代码为什么不行:var b=“123”
b.len="nihao"
alert(b.len)
第一行给b赋值为"123",那么b就被定义为字符串类型的变量了,而不是一个基于自定义类的对象。
而对于字符串变量,是不能再给它赋一个自定义的len属性的。
另外,字符串变量有个只读的length属性,表示字符串的长度。
可以访问该属性:
alert(b.length) //OK
但不能赋值,赋值无效:
b.length = 6//无效
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)