你现在的位置 -> javascript » 实验室

javascript-函数

星期四, 五月 14th, 2009, 12:33 | YSjia 点击2184次

什么是函数

函数是一组可以随时随地地运行的语句。

函数是ECMAScript的核心。

函数是由这样的方式进行声明的:关键字function、函数名、一组参数,以及置于括号中待执行的代码。

(以上来自己ECMAScript)

匿名函数

匿名函数在javascript里非常常用,也是非常有用的。

function(a,b,c){

    return (a+b+c);
}


使用方法

var total=function(a,b,c){

    return(a+b+c);
}

alert(total(1,2,3));


还要以这样被使用

/*other one*/

var total=function(a,b,c){

    return(a+b+c+);

}(1,2,3);

alert(z);

以上两种方法结果相同。

第二种方法比较其实就是函数做为表达式的一种使用方法,是javascript函数调用的一种方式。

alert("你好!");

(alert)("你好!");

这样就比较好理解了,alert是javascript最常见的函数之一了,他本身是一个函数所以,可以用函数做为表达式方法进行调用。

函数作为参数

这个不是什么新鲜的东西,但是非常有用

var containter=function(func,a,b,c){

    return func(a,b,c);
}

var total=function(a,b,c){

    return(a+b+c);
}

alert(containter(total,1,2,3));

函数式概念

javascript应用至今,最重要的应该是用它来做Web app,所以很多人对其强壮性提出质疑,但是同时很多人也在努力的将javascript套用各种编程风格使其更通用、更强壮、更容易维护。

而函数式的概念相对而言比较重要

  • 函数不总是需要名称。
  • 函数可以像其他值一样分配给变量。
  • 函数表达式可以编写并放在括号中,留待以后应用。
  • 函数可以做为参数传递给其他函数

这一概念总结来自IBM

这里再引用他的一个例子说明一下

生成动态HTML的能用方式:

Array.prototype.fold=function(templateFn) {
  var len=this.length;

  var str=' ';

  for (var i=0 ; i<len ; i++)

	str+=templateFn(this[i]);

  return str;
}

function templateInstance(element) {

  return ... HTML generation code ...

}

document.write(arr.fold(templateInstance));

这一方法巧妙的对Array类型的prototype的属性进行新的定义。用的就是匿名函数的方法。并且将函数做为参数进行处理。

我们可以看到这样可以使代码更加的灵活,更容易阅读。

到这里,其实javascript最基础的东西已经讲完,以后的文章里,会讲一些javascript面向对象的方法以及DOM操作。

面向对象将对照mootools的源码进行讲解,而DOM操作将对照jQuery的源码进行讲解。

原创文章转载请注明:YSlove.net
本文固定链接:http://yslove.net/2009/05/javascript-function/


如果你喜欢请+1 ^_^

Tags:

13 Responses to “javascript-函数”

  1. Brhum 说:

    哦原来新的~我有截图~不好使

    [回复]

    Y.Jiajia 说:

    ??你指的是哪里出错了呢,截图发给我吧,谢谢了!will.yuan[at]ymail.com

    [回复]

  2. 小T 说:

    看看朋友们在干啥呢这个板块新做的吧,怎么做的

    [回复]

    Y.Jiajia 说:

    还在测试用,有些功能还没完善,等正式上线再详细说 :-P

    [回复]

    小T 说:

    好的,奇怪怎么没收到回复邮件呢,你再回复我个

    [回复]

    Y.Jiajia 说:

    噢,测试一下。

    [回复]

    小T 说:

    还是没有,我给你个回复,你收的到我给你的回复么

    [回复]

  3. schuen 说:

    其实JS还是很强大的

    [回复]

    Y.Jiajia 说:

    的确,我更喜欢用怪异这个词还形容它,哈哈。

    [回复]

  4. that5 说:

    懂那么点点
    把我沙发也抢了
    你用雅黑了哇?下面“看看朋友们在干啥呢”怎么调用的?

    [回复]

    Y.Jiajia 说:

    一直用的都是雅黑。那个是用Google的API做的,不过还在测试中。

    [回复]

  5. zwwooooo 说:

    看完了,有点晕,坐一下。

    [回复]

    Y.Jiajia 说:

    我开始看也晕。哈哈

    [回复]

留下你的足迹

分类

随机作品

GMC CEO Summit Events Invite Design

GlobalMarket邀请球王来中国的邀请函

Dark Templar

在黑夜中游走的神灵,他们将自己的灵魂深深藏在夜色中!

软件: photoshop 8.0

时间: 约3小时

李晨-手绘

Photoshop CS3

Wacom

UAT9