JavaScript中函数的入门学习(一)
因为JavaScript是一门函数式编程语言(functional language);因此呢,重点自然是有关函数部分的学习了;
这篇文章主要讲 函数的声明、参数赋值;
一、函数声明
1.1 JavaScript函数式使用函数字面量(function literal)进行声明从而创建函数值的;(官方说辞)
函数字面量由四个部分组成:
1.function 关键字;(很关键)
2.可选名称:这个怎么理解呢?翻译一下:函数可以有名称也可以没有,所以叫可选名称;没有名字的叫匿名函数
3.括号内部,一个以逗号分隔的参数列表;(注释:参数可以有也可以没有;如果有多个参数每个参数之间用逗号隔开);
4.函数体;
定义一个简单的函数:
function funName(){
return "这是一个函数";
}
接下来讲一下,函数定义的几种方式:
第一种:常用的方式:function funName(){}
第二种:匿名函数: function(){}
第三种:将函数赋给变量:
var test = function funName(){};
第四种:将函数作为对象的属性
var person ={
test :function dbName(){}
};
第三、四又叫内联函数;内联函数的函数名只在函数体中可见(可以自己试一下);
1.2函数中可以添加属性和方法
JavaScript中的函数和其他很多语言中的函数不同,JavaScript中赋予函数最重要的特性之一是将函数作为第一型对象(ps:这个第一原型对象是相当于Java的object吧);
JavaScript中:函数中可以有变量、也可以有方法,可以分配属性和变量,可以共享普通对象所有拥有的属性,还有一个超级属性:被调用。。。。
二、函数参数赋值
顺带提一下:在其他更纯面向对象的语言里,方法重载通常是通过在同名方法中申明不同的实现来达到目的,JavaScript中函数重载比较蛋疼,是通过传入参数的特性和个数进行相应的修改来达到目的;(至于如何实现可以自己试一下或者百度一下)
重点:函数有一个 arguments的属性:arguments属性指向所有传入参数的集合;通过arguments参数可以得到所有的传入的参数;
函数的length属性:声明函数时参数的个数(不要和arguments.length搞混淆了);
举个例子:
运行结果: