zoukankan      html  css  js  c++  java
  • JS作用域

    JS没有块级作用域

    在ES5以及之前的JS版本中,JS是没有块级作用域的概念的,只是在ES6之后JS才有了块级作用域。用let声明

    for(var i = 0;i<5; i++){
    }
    console.log(i)//5
    
    for(let j = 0;j<5;j++){
    }
    console.log(j)//undefind
    

    JS的函数作用域

    在JS函数内部声明的变量仅能在此函数内部使用,没有显式声明的变量会默认声明为全局变量

    function fn(){
        var a = 1; //a是函数内部的局部变量
        b = 2; //b会默认声明为全局变量
    }
    
    fn();
    
    console.log(a);//undefined
    console.log(b);//2
    

    利用这个特性可以将很多变量封装在函数中而不会污染全局

    (function (){
        var a = 1; 
        
    })()//执行一个函数而又没有任何变量声明
    
  • 相关阅读:
    sqlserver查询表字段
    Lombok
    属性配置
    计时器与启动加载器
    banner
    互斥锁和条件变量
    System V消息队列
    命令行参数的处理函数getopt
    posix 消息队列
    不定参数
  • 原文地址:https://www.cnblogs.com/zheng-chuang/p/7203290.html
Copyright © 2011-2022 走看看