var sum;sum = 3+2;alear(sum); sum = 7+8;alear(sum);......//不停的重复两行代码如果要实现8组数的和,就需要16行代码,实现的越多,代码行也就越多。所以我们可以把完成特定功能的代码块放到一个函数里,直接调用这个函数,就省去重复输入大量代码的麻烦。使用函数完成:
function add(a,b){sum = a+b;//只需要写一次就可以 }; add2(3,2); add2(7,8); ......//只需要调用函数就可以2、定义函数 function 函数名(参数argument){ 函数体statements; } //function定义函数的关键字,“函数名”你为函数取的名字,“函数体”替换为完成特定功能的代码。function shout(){ var beatles = Array("John","Paul","George","Ringo"); for (var count = 0; count < beatles.length; count++){ alert(beatles[count]); } } //这个函数里面的循环语句将依次弹出对话框来显示beatles里面内容。shout();调用函数,执行脚本里的动作完成对两个数求和并显示结果的功能:<script type="text/javascript">function add2(){sum = 3+2;alert()sum; } add2(); </script>3、函数调用<script type="text/javascript"> function add(){ sum = 1+1; alert(sum);} add();//调用函数,直接写函数名。</script>第二种情况:在HTML文件中调用,如通过点击按钮后调用定义好的函数。<html> <head> <script type="text/javascript"> function add2(){ sum = 5 + 6; alert(sum); } </script> </head> <body> <form><input type="button" value="click it" onclick="add2()"> //按钮,onclick点击事件,直接写函数名 </form> </body> </html>4、有参数的函数function add2(x,y){ sum = x + y; document.write(sum); } //x和y则是函数的两个参数,调用函数的时候,我们可通过这两个参数把两个实际的加数传递给函数了。实现如下功能: <script type="text/JavaScript"> function add3(x,y,z) { sum = x + y +z; document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>"); } add3(5,8,3); add3(7,1,4);</script>5、返回值的函数 function multiply(num1,num2){ var total = num1*num2; return total; }之前通过"document.write"把结果输出来,现在使用函数输出 function add2(x,y){ sum = x + y; return sum; //返回函数值,return后面的值叫做返回值。 } //还可以通过变量存储调用函数的返回值: result = add2(3,4);//语句执行后,result变量中的值为7。例:下面这个函数只有一个参数(一个华氏温度值),它将返回一个数值(同一温度的摄氏温度值): <script type="text/javascript"> function convertToCelsius (temp) { var result = temp - 32; result = result / 1.8; return result; } //函数的真正价值体现在,我们还可以把它们当做一种数据类型来使用,这意味着可以把一个函数的调用结果赋给一个变量: var temp_fahrenheit = 95; var temp_celsius = convertToCelsius(temp_fahrenheit); alert(temp_celsius); </script>
在这个例子里,变量temp_celsius的值将是35,这个数值由convertToCelsius函数返回。
在命名变量时,我用下划线来分隔各个单词;在命名函数时,我从第二个单词开始把每个单词的第一个字母写成大写形式(也就是驼峰命名法)。
1)、变量的作用域
变量既可以是全局的,也可以是局部的。
全局变量(global variable)可以在脚本中的任何位置被引用。一旦你在某个脚本里声明了一个全局变量,就可以从这个脚本中的任何位置------包括函数内部------引用它。全局变量的作用域是整个脚本。
局部变量(local variable)只存在于声明它的那个函数的内部,在那个函数的外部是无法引用它的。局部变量的作用域仅限于某个特定的函数。
可以用var关键字明确地为函数变量设定作用域。
如果在某个函数中使用了var,那个变量就将被视为一个局部变量,它只存在于这个函数的上下文中;反之,如果没有使用var,那个变量就将被视为一个全局变量,如果脚本里已经存在一个与之同名的全局变量,这个函数就会改变那个全局变量值。
例子:
function square(num){ total = num*num; return total; } var total = 50; var number = square(20);alert(total);这是错误的,number的值为400,但是这里alert弹出的是total的值,应该是50. function square(num){ var total = num*num; return total; } var total = 50; var number = square(20); alert(total); </script>正确结果:
以上就是关于Javascript函数的学习笔记,还涉及到了一些变量的知识点,希望对大家的学习有所帮助。