JavaScript 函数使用 function 关键字来定义,可以使用一个函数声明或者一个函数表达式。
一、函数声明示例:
(资料图)
声明一个函数不会立即执行。
它们被“保存以供稍后使用”,稍后将被执行,当它们被调用(call)。
项目 JavaScript 函数
此示例调用一个函数,该函数执行计算并返回结果
<script> function myfan(a, b) { return a / b; } document.getElementById("demo").innerHTML = myfan(6, 7);</script>
分号是用来分隔执行JavaScript语句。因为一个函数声明不是一个可执行语句,它不用分号结尾。
二、函数表达式一个JavaScript函数也可以使用 表达式 定义。
函数表达式可以存储在变量中。
var x = function (a, b) {return a * b};
完整代码:
项目 一个函数可以存储到一个变量里面:
<script> var x = function(a, b) { return a * b }; document.getElementById("demo").innerHTML = x;</script>
函数表达式存储在变量中后,变量可以作为函数使用。
var x = function (a, b) { return a * b};var z = x(4, 3);
上面的函数实际上是一个匿名函数(一个没有名字的函数),存储在变量中的函数不需要函数名。它们总是使用变量名调用(call)。
上面的函数用分号结束,因为它是一个可执行语句的一部分。
三、Function() 构造函数1. 定义JavaScript函数使用function关键字定义。函数还可以用一个内置的叫做Function()的构造函数来定义。
var myFunction = new Function("a", "b", "return a * b");var x = myFunction(4, 3);
不同的写法
实际上不必使用函数构造函数。上面的例子也可以写成这样。
var myFunction = function (a, b) { return a * b};var x = myFunction(5, 5);
大多数时候,可以避免使用 new 关键词在JavaScript 。
2. Function 提升(Hoisting)Hoisting是JavaScript的默认行为是移动声明当前范围的顶部。Hoisting 适用于变量声明和函数声明。
正因为如此,JavaScript函数可以调用之前就被声明:
myFunction(5);function myFunction(y) { return y * y;}
使用表达式定义函数不会被提升。
四、自调用函数函数表达式可以进行 “自调用” 。
自动调用一个自调用表达式(自动启动),而不必调用.函数表达式将自动执行,如果表达式随后 (),不能自调用一个函数声明.您必须在函数的周围添加圆括号,以指示它是函数表达式:
<script> (fun document.getElementById("demo").ction () {innerHTML = "Hello! I called myself"; })(); </script>
上面的函数实际上是一个匿名的自调用 函数(没有名字的函数)。
函数可以用作值JavaScript 函数可以用作值。
项目 函数可以作为值对待:
x = myFunction(4,3) or x = 12
在这两种情况下, x 都会是12.
<script> function myFunction(a, b) { return a * b; } var x = myFunction(4, 3); document.getElementById("demo").innerHTML = x;</script>
JavaScript函数可以用在表达式:
<script> function myFunction(a, b) { return a * b; } var x = myFunction(4, 3) * 2; /*函数可以在表达式中使用.*/ document.getElementById("demo").innerHTML = x;</script>
五、总结本文主要介绍了JavaScript 函数的定义。通过讲解了函数的定义,函数的表达式,如何去定义构造函数,以及如何去调用自己创建的函数,每一点都做了详细的讲解,通过用丰富的案例帮助大家更好理解。
希望大家可以根据文章的内容,积极尝试,有时候看到别人实现起来很简单,但是到自己动手实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。
标签: