JavaScript--函数篇

函数使用

分为两步:1.声明函数 2.调用函数
声明函数:
function 函数名(){
​ 函数体
}

function sayHi(){
    console.log('hi~');
}

(1)function 声明函数的关键字 全部小写
(2)函数是做某件事情,函数名一般是动词 sayHI
(3)函数不调用自己不执行
函数调用:
函数名();

sayHi();

函数参数

function getSums(start,end){
  var sum=0;
  for(vae i=0;i<=end;i++){
    sun+=i;
  }
  console.log(sum)
}
getSums(1,10)
参数说明
形参形式上的参数,函数定义时候传递的参数,并不知道是什么
实参实际上的参数,函数调用的时候传递的参数,实参是传递给形参的

形参是用来接收实参的

匹配问题

参数个数说明
实参个数等于形参个数输出结果正确
实参个数多于形参个数只取到形参个数
实参个数小于形参个数多于 都形参定义undefined,结果为NaN

函数返回值

function 函数名(){
return 需要返回的结果
}
函数名()
1.我们函数只是实现某种功能,最终结果需要返回给函数的调用者函数名()通过return实现的
2.只要函数遇到return 就把后面的结果返回给函数的调用者 ,函数名()=return后面的结果

return作用

1.return语句下一行的代码不被执行
2.return 只能返回一个值,如果有两个数,隔开;返回最后一个数的值
3.若想返回多个值可以利用数组
4.若我们的函数有return则返回return后面的值,如果没有return则返回undefined

break、continue、return区别

arguments的使用

伪数组:并不是真正意义上的数组
1、具有数组的length属性
2、按照索引的方式进行存储
3、它没有真正意义上数组的一些方法

  • 函数可以调用另一个函数,因为函数是独立的代码块

函数声明方式(2种)

1.利用函数关键字自定义函数(命名函数)
function fn(){
}
fn();
2.函数表达式(匿名函数)
var 变量名=function(){};
var fun=function(){
  console.log('我是函数表达式');
}
fun();

(1)fun是变量名 不是函数名
(2)函数表达式声明方式和声明变量差不多,只不过变量里面存的值 而函数表达式里存的函数
(3)函数表达式也可以传递参数

作用域

1.全局变量,在全局中都可以使用
2.局部变量 只能在函数内部使用(函数的形参也可以看做局部变量)
3.从执行效率上看两种变量
(1)全局变量只有浏览器关闭的时候才会销毁,比较占用内存资源
(2)局部变量 当我们程序执行完毕后会销毁,比较节约内存资源

作用域链

内部函数访问外部

预解析

js引擎运行js分为两步:预解析 代码执行
(1)预解析 js引擎会把js里面所有的var和function提升到当前作用域的最前面
(2)代码执行 按照代码执行的顺序从上往下执行

  • 预解析分为变量预解析(变量提升)和函数预解析(函数提升)
  • 1.变量提升 把所有的变量声明提升到当前作用域的最前面 不提升赋值操作
  • 2.函数提升 把所有的函数声明提升到当前作用域的最前面 不调用函数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值