免责声明:这是一个个人学习练习,但这与任何学校作业无关;我目前甚至没有参加任何语言的编程课程。我只是希望更彻底地学习Javascript,以促进个人成长。
我正在尝试编写一个页面,使用一个现有的页面作为框架。我试着理解现有的代码,这样我就可以适应
有关现行守则:
function = Page()
{
this.items = new Array(20);
this.itemsIndex = 0;
}问:我理解第一行和第三行(函数和新数组(20)),但我不熟悉"this.itemsIndex = 0“的语法和用途。到目前为止,谷歌搜索已经让我失望了,学习资源(书籍和在线教程)也没有触及到我所知道的这种语法。
有人能帮我找到一个现有的资源来解释这一点,一个新的(但不是完全陌生的)与OOP?如果没有人能在这里解释一下吗?
发布于 2013-12-20 00:14:23
给予:
function Page()
{
this.items = new Array(20);
this.itemsIndex = 0;
}这是一个惯例,函数的目的是作为构造函数(即用新关键字)以大写字母开头。主体也指示一个构造函数,因此函数应该被调用如下:
var page = new Page();当使用new调用时,函数的--它被设置为新对象()创建的新对象,它的私有[[Prototype]]属性引用构造函数的公共原型属性。这个新对象是Page的“实例”。
所以
this.items = new Array(20);创建新对象的items属性,使其长度为20,并且
this.itemsIndex = 0;创建新对象的itemsIndex属性,并为其赋值0。由于函数不返回任何内容,默认情况下它将返回新对象(使用new调用的函数必须返回一个对象)。
alert(page.items.length); // 20
alert(page.itemsIndex); // 0
alert(page.items[0]); // undefined since nothing has been assignedhttps://stackoverflow.com/questions/20693994
复制相似问题