java script 函数

不定时分享前端学习的点滴,加油!!!

js函数:

一.变量的作用域

 全局作用域:函数以外就是全局作用域

 函数作用域:函数以内就是函数作用域

 全局变量:全局作用域下声明的变量,可以在任意作用域下访问

 局部变量:函数作用域下声明的变量,只能在所在的函数作用域下访问

函数内不加var声明的变量是全局变量

程序执行前,会将var声明的变量提升到所在作用域的最前边,只是提升声明部分,赋值不提升。

.函数的作用域

 全局函数:在全局作用域下创建的函数,可以在任意作用域下调用

 局部函数:在函数作用域下创建的函数,只能在所在的函数作用域下调用

 作用域链:作用域之间相互嵌套,查找变量的时候,先到当前作用域下查找,如果没有会一直往上一级作用域查找

 函数提升:程序执行前,会自动将函数整体提升到所在作用域的最前边,可以先写调用再写创建。

三.递归

 在函数中调用自身这个函数,本是一种死循环,会造成内存泄漏

 使用递归:

   要有边界条件

   找规律

    使用return结束

斐波那契数列(第1项,2项是1),从第3项开始,每项的值是前两项相加的和。使用递归计算任意一项的值是多少

1   1   2   3   5   8   13   21   34

四.匿名函数

 function(){  }

 没有名称函数

 1.创建函数

函数声明

function  fn(){

}

函数表达式

var fun=function(){

}

  (1)函数名称()函数名称的区别

   函数名称()  调用函数,执行函数体中的代码

   函数名称 本质是就是一个变量,保存了函数

  (2)函数声明函数表达式创建函数的区别

   函数声明存在函数整体提升,可以先写创建再写调用

   函数表达式只是存在声明提升,必须先写创建再写调用

  练习:使用匿名函数创建函数getSum,传递任意两个数字,返回两者之间所有整数的和。

c();

var c=2;

function c(){

  console.log(5);

}

c();

 2.匿名函数自调用

  为了创建函数作用域,防止全局污染

;(function(){

  //函数作用域,变量都是局部变量

})();

 3.回调函数

  将函数作为参数传递

function tao(madai){

  madai() //通过参数名称,调用传递的回调函数

}

function xin(){

}

tao( xin )

tao( function(){} )

五.系统函数

 Number()/parseInt()/parseFloat()...

 isNaN()  检测字符串中是否含有非数字,含有->true,不含有->false

         会自动调用函数Number()转为数值,然后查看是否为NaN

 eval()   执行字符串表达式

自定义对象

数组对象

字符串对象

Date对象

Math对象

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值