//1
var object1 = function(o){
// some code
};
//2
var object2 = new object1({
method1: //some code
method2: //some code
method3: //some code
});
//3
document.onkeydown=function(e){
var eventKey = e.keyCode || e.charCode;
var sel = Coverflow.selected;
if(eventKey == 39 || eventKey == 37) {
if(eventKey == 39) sel++;
else if(eventKey == 37) sel--;
sel = sel.limit(0, Coverflow.getListLength() - 1);
Coverflow.select(sel);
}
}
好吧,我的问题是:
谢谢
答案 0 :(得分:2)
创建object1时会发生什么,= function()部分是什么意思?
JavaScript中的函数是第一类对象。它们可以像任何其他函数一样传递和分配。
object2是否指向object1?该作业是否会创建继承?
没有。 object2是object1的实例。这就像将object1视为类定义一样。
document.onkeydown
如何执行?
按下某个键时,将触发一个事件。文档对象中的代码(由浏览器提供)侦听该事件并调用该函数(如果存在)。
答案 1 :(得分:0)
1 - 它是一个名为object1
的函数,在运行时定义,更多here
2 - 传递参数的新函数实例(在函数声明中引用为'o')
3 - 函数绑定到onkeydown
事件,因此每次按下文档键时都会执行该函数,更多信息here
答案 2 :(得分:0)
JavaScript没有类的概念,但可能有类似的行为。所以我将调用可能是实例化类的对象/函数。
object1
是某种由构造函数定义的类,function(){...}
part是该类的构造函数。object2
是对object1
类实例的引用,它是通过调用带有1个参数的object1
类的构造函数来实例化的,该参数本身就是一个对象。onkeydown
是keydown
事件处理程序的DOM对象的保留属性。一旦浏览器触发此事件,它将由相关功能(如果存在)处理