网络编程
位置:首页>> 网络编程>> JavaScript>> 使用面向对象的技术创建高级JavaScript Web 应用程序(2)

使用面向对象的技术创建高级JavaScript Web 应用程序(2)

作者:Ray Djajadinata 来源:Msdn 发布时间:2008-11-03 13:00:00 

标签:面向对象,web程序,javascript,开发

JavaScript 函数是最棒的

在很多编程语言中,函数和对象通常被视为两样不同的东西。在 JavaScript 中,其差别很模糊 — JavaScript 函数实际上是具有与它关联的可执行代码的对象。请如此看待普通函数:

程序代码

function func(x) {
    alert(x);
}
func(“blah”);

这就是通常在 JavaScript 中定义函数的方法。但是,还可以按以下方法定义该函数,您在此创建匿名函数对象,并将它赋给变量 func

程序代码

var func = function(x) {
    alert(x);
};
func(“blah2”);

甚至也可以像下面这样,使用 Function 构造函数:

程序代码

var func = new Function(“x”, “alert(x);”);
func(“blah3”);

此示例表明函数实际上只是支持函数调用操作的对象。最后一个使用 Function 构造函数来定义函数的方法并不常用,但它展示的可能性非常有趣,因为您可能注意到,该函数的主体正是 Function 构造函数的 String 参数。这意味着,您可以在运行时构造任意函数。

为了进一步演示函数是对象,您可以像对其他任何 JavaScript 对象一样,在函数中设置或添加属性:

程序代码

function sayHi(x) {
    alert(“Hi, “ + x + “!”);
}
sayHi.text = “Hello World!”;
sayHi[“text2”] = “Hello World... again.”;

alert(sayHi[“text”]); // displays “Hello World!”
alert(sayHi.text2); // displays “Hello World... again.”

作为对象,函数还可以赋给变量、作为参数传递给其他函数、作为其他函数的值返回,并可以作为对象的属性或数组的元素进行存储等等。图 1 提供了这样一个示例。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com