javascript function是什么
在javascript中,function指的是“函数”,是一组执行特定任务(具有特定功能)的,可以重复使用的代码块;函数并不会自动运行,需要通过函数名调用才能运行。函数可以存储在变量、对象、数组中,还可作为参数传递给其它函数。
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
JS 函数(Function)是一组执行特定任务(具有特定功能)的,可以重复使用的代码块;函数并不会自动运行,需要通过函数名调用才能运行。
函数还可以存储在变量、对象、数组中,而且函数还可以作为参数传递给其它函数,或则从其它函数返回。
在javascript中,除了使用内置函数外,我们也可以自行创建函数(自定义函数),然后在需要的地方调用这个函数,这样不仅可以避免编写重复的代码,还有利于代码的后期维护。
JS 定义函数
JS 函数声明需要以 function 关键字开头,之后为要创建的函数名称,function 关键字与函数名称之间使用空格分开,函数名之后为一个括号( ),括号中用来定义函数中要使用的参数(多个参数之间使用逗号,分隔开),一个函数最多可以有 255 个参数,最后为一个花括号{ },花括号中用来定义函数的函数体(即实现函数的代码),如下所示:
function functionName(parameter_list) { // 函数中的代码 }
示例代码如下:
function sayHello(name){ document.write("Hello " + name); }
上面示例中定义了一个函数 sayHello(),该函数需要接收一个参数 name,调用该函数会在页面中输出“Hello ...”。
JS 调用函数
一旦定义好了一个函数,我们就可以在当前文档的任意位置来调用它。调用函数非常简单,只需要函数名后面加上一个括号即可,例如 alert()、write()。注意,如果在定义函数时函数名后面的括号中指定了参数,那么在调用函数时也需要在括号中提供对应的参数。
示例代码如下:
function sayHello(name){ document.write("Hello " + name); } // 调用 sayHello() 函数 sayHello('PHP中文网');
提示:JavaScript 对于大小写敏感,所以在定义函数时 function 关键字一定要使用小写,而且调用函数时必须使用与声明时相同的大小写来调用函数。
参数的默认值
在定义函数时,您可以为函数的参数设置一个默认值,这样当我们在调用这个函数时,如果没有提供参数,就会使用这个默认值作为参数值,如下例所示:
function sayHello(name = "World"){ document.write("Hello " + name); } sayHello(); // 输出:Hello World sayHello('PHP中文网'); // 输出:Hello PHP中文网
JS 函数返回值
在函数中可以使用 return 语句将一个值(函数的运行结果)返回给调用函数的程序,这个值可以是任何类型,例如数组、对象、字符串等。对于有返回值的函数,我们可以会使用一个变量来接收这个函数的返回值,示例代码如下:
function getSum(num1, num2){ return num1 + num2; } var sum1 = getSum(7, 12); // 函数返回值为:19 var sum2 = getSum(-5, 33); // 函数返回值为:28
提示:return 语句通常在函数的末尾定义,当函数运行到 return 语句时会立即停止运行,并返回到调用函数的地方继续执行。
另外,一个函数只能有一个返回值,若要返回多个值则,则可以将值放入一个数组中,然后返回这个数组即可,如下例所示:
function division(dividend, divisor){ var quotient = dividend / divisor; var arr = [dividend, divisor, quotient] return arr; } var res = division(100, 4) document.write(res[0]); // 输出:100 document.write(res[1]); // 输出:4 document.write(res[2]); // 输出:25
JS 函数表达式
函数表达式与声明变量非常相似,是另外一种声明函数的形式,语法格式如下:
var myfunction = function name(parameter_list){ // 函数中的代码 };
参数说明如下:
myfunction:变量名,可以通过它来调用等号之后的函数;
name:函数名,可以省略(一般情况下我们也会将其省略),如果省略那么该函数就会成为一个匿名函数;
parameter_list:为参数列表,一个函数最多可以有 255 个参数。
示例代码如下:
// 函数声明 function getSum(num1, num2) { var total = num1 + num2; return total; } // 函数表达式 var getSum = function(num1, num2) { var total = num1 + num2; return total; };
上面示例中的两个函数是等价的,它们的功能、返回值、调用方法都是相同的。
注意:在函数声明中,不需要在右花括号后放置分号,但若使用函数表达式就应该在表达式的最后以分号结尾。
函数声明和函数表达式虽然看起来非常相似,但它们的运行方式是不同的,如下例所示:
declaration(); // 输出: function declaration function declaration() { document.write("function declaration"); } expression(); // 报错:Uncaught TypeError: undefined is not a function var expression = function() { document.write("function expression"); };
如上例所示,如果函数表达式在定义之前被调用,会抛出异常(报错),但函数声明则可以成功运行。这是因为在程序执行前,JavaScript 会先对函数声明进行解析,因此无论是在函数声明前还是声明后调用函数都是可行的。而函数表达式则是将一个匿名函数赋值给一个变量,所以在程序还没有执行到该表达式之前,相当于函数还未定义,因此无法调用。
【推荐学习:javascript高级教程】
以上就是javascript function是什么的详细内容,更多请关注其它相关文章!
上一篇: mac一直ReportCrash
下一篇: macos 重置权限
推荐阅读
-
thinkphp安全文件的原理是什么?
-
跟踪外推收录排名怎么做,做不好排名的原因是什么?
-
驻场开发是什么意思(java外包在银行驻场开发讲解)
-
JavaScript 利用Cookie记录用户登录信息_javascript技巧
-
CSS3+JavaScript实现炫酷呼吸效果的示例代码
-
Warning: session_start() [function.session-start]: Cannot se
-
边缘计算网关是什么 边缘计算网关功能优势
-
JavaScript原型链详解
-
Error in v-on handler: “TypeError: _this3.addForm.goods_cat.join is not a function
-
JavaScript实现拖放事件