只是试图了解Javascript,发生了一件非常奇怪的事情。方法getChapters()
正在解雇,即使我没有明确地称它...任何想法? (我正在获取章节的警告框。)
videoChapters = function () {
};
videoChapters.prototype.config = {
jsonProvider : '_Chapters.aspx'
};
videoChapters.prototype.init = function () {
//get chapters
};
videoChapters.prototype.getChapters = new function () {
alert('getting chapters');
}
jQuery(document).ready(function () {
videoChapters = new videoChapters();
videoChapters.init();
});
答案 0 :(得分:3)
这一行:
videoChapters.prototype.getChapters = new function () {
......应该不包含“新”这个词。当Javascript尝试计算表达式时,它会将函数的结果传递给“new”运算符。
答案 1 :(得分:2)
删除new
关键字:
videoChapters.prototype.getChapters = function () {
alert('getting chapters');
}
答案 2 :(得分:1)
....prototype.getChapters = new function () {
^-------- See the new keyword here?
删除new
关键字,一切都将按预期工作,使用new
将调用该函数作为构造函数并返回它的新实例,在这种情况下是匿名函数的新实例。