首页 > 其他分享 >第七章:函数

第七章:函数

时间:2023-04-26 15:32:08浏览次数:37  
标签:box function return 函数 num arguments 第七章


学习要点:
1.函数声明
2.return 返回值
3.arguments 对象

 

函数是定义一次但却可以调用或执行任意多次的一段 JS 代码。函数有时会有参数,即函数被调用时指定了值的局部变量。 函数常常使用这些参数来计算一个返回值, 这个值也成为函数调

用表达式的值。
一.函数声明
函数对任何语言来说都是一个核心的概念。 通过函数可以封装任意多条语句, 而且可以在任何地方、任何时候调用执行。ECMAScript 中的函数使用 function 关键字来声明,后跟一组参数

以及函数体。



function box() { //没有参数的函数
alert('只有函数被调用,我才会被之执行');
}
box(); //直接调用函数
function box(name, age) { //带参数的函数
alert('你的姓名:'+name+',年龄:'+age);
}
box('chaoyi',28); //调用函数,并传参



 
二.return 返回值
带参和不带参的函数, 都没有定义返回值, 而是调用后直接执行的。 实际上, 任何函数都可以通过return 语句跟后面的要返回的值来实现返回值。



function box() { //没有参数的函数
return '我被返回了!'; //通过 return 把函数的最终值返回
}
alert(box()); //调用函数会得到返回值,然后外面输出
function box(name, age) { //有参数的函数
return '你的姓名:'+name+',年龄:'+age;//通过 return 把函数的最终值返回
}
alert(box('chaoyi', 28)); //调用函数得到返回值,然后外面输出我们还可以把函数的返回值赋给一个变量,然后通过变量进行操作。
function box(num1, num2) {
return num1 * num2;
}
var num = box(10, 5); //函数得到的返回值赋给变量
alert(num);



 
return 语句还有一个功能就是退出当前函数, 注意和 break 的区别。 PS: break 用在循环和 switch 分支语句里。



function box(num) {
if (num < 5) return num; //满足条件,就返回 num
return 100; //返回之后,就不执行下面的语句了
}
 
 
 
alert(box(10));


三.arguments 对象
ECMAScript 函数不介意传递进来多少参数,也不会因为参数不统一而错误。实际上,函数体内可以通过 arguments 对象来接收传递进来的参数。



function box() {
return arguments[0]+' | '+arguments[1]; //得到每次参数的值
}
alert(box(1,2,3,4,5,6)); //传递参数
arguments 对象的 length 属性可以得到参数的数量。
function box() {
return arguments.length; //得到 6
}
alert(box(1,2,3,4,5,6));



 
我们可以利用 length 这个属性, 来智能的判断有多少参数, 然后把参数进行合理的应用。
比如,要实现一个加法运算,将所有传进来的数字累加,而数字的个数又不确定。



function box() {
var sum = 0;
if (arguments.length == 0) return sum; //如果没有参数,退出
for(var i = 0;i < arguments.length; i++) { //如果有,就累加
sum = sum + arguments[i];
}
return sum; //返回累加结果
}
alert(box(5,9,12));



 
ECMAScript 中的函数,没有像其他高级语言那种函数重载功能。



function box(num) {
return num + 100;
}
function box (num) { //会执行这个函数
return num + 200;
}
alert(box(50)); //返回结果



 

标签:box,function,return,函数,num,arguments,第七章
From: https://blog.51cto.com/u_16089934/6228051

相关文章

  • STM32F407 宏定义实现函数错误返回
    开发环境:Window10+MDK+STM32F407实现目的:针对在函数内部需要对各个执行的子函数判断错误返回的场合,用宏定义替换繁琐的编码代码实现:1/*这种写法怎样注册宏定义,故障返回批量处理注册函数不能写在线程内部*/2#defineET_(...)if(!__VA_ARGS__)......
  • 函数高级、包的使用、if-else、循环、switch、数组
    目录1函数高级2包的使用3if-else4循环5switch6数组1函数高级packagemainimport"fmt"//1函数的参数和返回值都是类型的一部分,函数可以赋值给一个变量//test3函数,接收一个参,参数是函数类型:没有参数没有返回值//test有返回值,返回值是个函数:函数有两个参数,一......
  • 我的C++常用函数
    /*根据多个分隔符来分隔字符串.比如":,]"*/std::vector<std::string>SplitString(conststd::string&str,conststd::string&delimiters){std::vector<std::string>tokens;size_tprev=0,pos;while((pos=str.find_first_of(d......
  • 12 | C语言中的函数类型和函数指针类型
    函数类型和函数指针类型的区别,让我们先看一个例子#include<iostream>usingnamespacestd;typedefint(Func)(int);typedefint(*Func_p)(int);intf(inta){returna;}intmain(){Func_pp=f;Func*p_ptr=f;cout<<p(0)<<endl;cout<<p_ptr(1)......
  • pid算法函数实现,c语言版
     #include<stdio.h>floatpid(floatsetpoint,floatprocess_variable,floatkp,floatki,floatkd,floatdt,float*integral,float*last_error){//Calculateerrorfloaterror=setpoint-process_variable;//Calculateintegral......
  • PB常用函数
    弹出窗口:messagebox()基本写法:Messagebox('标题','内容')完整写法: MessageBox('标题','内容',图标,按键,默认值)           (1)其中标题与内容为要显示的字符串,不可省略,但可以省略,即什么也不显示,例如Messagebox('','')这样也是正确的单里面的东西一样也不能少!   ......
  • PowerBuilder常用字符串函数
    Fill()功能建立一个由指定字符串填充的指定长度的字符串。语法Fill(chars,n)参数chars:string类型,指定用于重复填充的字符串n:long类型,指定由该函数返回的字符串的长度返回值String。函数执行成功时返回n个字符的字符串,该字符串以参数chars中的字符串重复填充而成。如果参数cha......
  • R语言中aggregate 函数
     001、测试数据框studentID<-seq(1,20)gender<-rep(c("M","M","F","F","F"),4)math<-rep(c(92,86,85,74,82),4)english<-rep(c(76,69,82,71,80),4)class<-rep(c(paste0(c(1,2,......
  • Python计算 x 的整数 n 次幂函数
    Python实现pow(x,n),即计算x的整数n次幂函数(即,xn)。defmyPow(self,x:float,n:int)->float:ifx==0:return0res=1ifn<0:x,n=1/x,-nwhilen:ifn&1:res*=xx*=xn>>=1......
  • Django之视图函数层 (必会三板斧 JsonResponse对象 request对象获取文件 FBV与CBV
    目录视图层之必会三板斧用来处理请求的视图函数都必须返回HttpResponse对象情况一:啥也不返回这里会报一个没有返回HttpResponse对象的错误,由此可见必须要返回一个HttpResponse对象情况二:返回HttpResponse对象点击Ctrl键查看源码可见是HttpResponse类,所以会返回一个值情......