我在搜索google和stackoverflow时遇到了一些麻烦,无法解答这段JavaScript代码的作用:
obj['e'+type+fn]( window.event );
Run Code Online (Sandbox Code Playgroud)
对我来说,这看起来像一个带参数/参数的数组元素:
array[index](argument);
Run Code Online (Sandbox Code Playgroud)
但是,我只能猜测这是做什么的.这相当于:
array[index]=argument
Run Code Online (Sandbox Code Playgroud)
哪个是为数组元素赋一个参数?
如果有人能够提供一个简单/通用的例子,说明这样做会很棒.我试图破译John Resig的addEvent()
实施.我并不是在寻找这个实现或与之相关的示例的解释,但更像是一个像MDC这样的愚蠢的例子用于使用一些想象产品的调用.
obj['e'+type+fn]( window.event );
Run Code Online (Sandbox Code Playgroud)
这只是访问对象属性的一种方法.例如,如果你有一个对象
a = {
name: 'someName'
age: 20
};
Run Code Online (Sandbox Code Playgroud)
您可以使用a.name
或访问名称,如上所述a['name']
.
他使用[]
符号的原因是他可以从多个字符串构建密钥.
因此,如果type=click
和fn=foo
他正在访问obj.eclickfoo
.要么obj['eclickfoo']
对象的这个属性必须是一个方法,因为他使用()调用它; 所以,他说:
obj.eclickfoo( window.event );
Run Code Online (Sandbox Code Playgroud)
或同等学历
obj['eclickfoo']( window.event );
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
304 次 |
最近记录: |