浏览 1411 次
锁定老帖子 主题:具名函数的四种调用方式(3)
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-07-04
最后修改:2009-07-04
这里把函数名首字母大写了,让它符合java类命名规范。
/** * 定义一个函数Car */ function Car(color,doors) { var car = {}; car.color = color; car.doors = doors; car.msg = function(){ alert("This is a " + this.color + " car, there are " + this.doors + " doors." ); } return car; }
看起来怪怪的,Car明明是一个类啊,怎么也不像之前的函数调用。和文章标题似乎有些不一致了。但我们的确可以用()来调用它。当然也可以用new来调用它。用new方式则让它更像java的创建对象方式。
//方式1 var c1 = Car('red',2); c1.msg(); //方式2 var c2 = new Car('black',4); c2.msg(); 嗯。这种方式在一些js库中也能见到,如mootools.js中的一个很重要的函数Native,返回值是一个函数(类)。mootools core中的Class类就是Native函数返回的。var Class = new Native({..});当然也可以不用new而直接采用()调用。
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |