首页  >  文章  >  web前端  >  js函数和变量的提升及闭包讲解

js函数和变量的提升及闭包讲解

小云云
小云云原创
2018-03-14 10:24:301477浏览

本文主要和大家分享两个重要的知识点,函数和变量的提升和闭包的原理用法详解,希望能帮助到大家。

函数和变量的提升

原理:就是函数及变量的声明都将被提升到函数的最顶部。
结果:变量和函数都支持先试用后声明
案例:

//变量提升x = 5; 
// 变量 x 设置为 5alert(x);var x; 
// 声明 x//函数提升print(5); 
//调用函数function print(y) 
{ //声明函数    return y * y;}

闭包

原理:在函数内嵌套另一个函数(另一个函数则为闭包)
结果:

  1. 在js中没有静态变量,可以将函数内声明的局部变量作为局部变量

  2. 怎么保证局部变量只被调用一次,可以通过变量赋值的方式,也就是首次调用最外层函数,后面都调用闭包

  3. 可以防止其他函数对其进行修改(其他函数可任意对全局变量进行修改)

案例:

function count() 
{    var counter = 0;        
return function ()     
{return counter += 1;}}
var add= count();add();
add();//值为二

相关推荐:

JavaScript中如何判断函数和变量存在的实例代码详解

基础的JavaScript知识总结(十)闭包、立即执行函数

JavaScript中的闭包

以上是js函数和变量的提升及闭包讲解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn