美文网首页
03-全局变量的细节问题

03-全局变量的细节问题

作者: Young_Blood | 来源:发表于2016-07-27 10:00 被阅读3次
<!DOCTYPE html>
<html lang="en">
 <head> 
  <meta charset="UTF-8" /> 
  <title>Title</title> 
 </head> 
 <body> 
  <script type="text/javascript">

        // 在全局作用域当中 带var 和 不带 var的关系
        // 区别: 带var的可以进行预解释,所以在赋值的前边执行不会报错;
        //      不带var的不能预解释,在前边执行会报错

//        console.log(num); // undefined
//        var num = 12;
//
//        console.log(num2); // num2 is not defined (当前的变量不存在) 报错
//        num2 = 12;

        // 关系:num2 = 12 -> 相当于给Window增加了一个叫做num2的属性名,属性值是12
        //     var num2 = 12 ->首先相当于给全局作用域增加了一个全局变量num,不仅如此他也相当于给Window增加了一个属性名num2,属性值为12
//        var num = 12;
//        console.log(num); // 12
//
//        num2 = 12;
//        console.log(num2); // 12 window.num2

//        var total = 0;
//        function fn() {
//            console.log(total); // undefined
//            var total = 100;
//        }
//        fu();
//        console.log(total); // 0


//        var total = 0;
//        function fn() {
//            console.log(total); // 0
//            total = 100;
//        }
//        fu();
//        console.log(total); // 100

        // 私有作用域中出现的一个变量不是私有的,则望上级作用域中进行查找,上级没有则继续向上查找,一直找到window,如果Window下也没有?
        // 我们是获取值 : console.log(total) 报错了
        // 我们是设置值 : total = 100; -> 相当于给Window增加了一个属性名total 属性值为100
        function fn() {
            console.log(total); // total is not undefined
            total = 100;
        }
        fu();
        console.log(total); // 100
        // JS中如果不进行任何特殊处理情况下 上边的代码报错,下边的代码都不在执行
    </script>  
 </body>
</html>

相关文章

  • 03-全局变量的细节问题

  • 2.全局变量的细节问题和预解释机制

    全局变量的细节问题 预解释是一种毫无节操的机制

  • CPP:03类的细节注意点

    CPP:03-类的一些细节注意点

  • C语言中的小细节

    C语言中有很多小细节值得我们注意,这些细节有助于我们更好的理解程序代码。 全局变量与局部变量 全局变量是定义在函数...

  • Go学习笔记03 | 流程控制

    一、if else for if 写在 if 里面,则是局部变量: 写在 if 外面,则是全局变量: 输出: 细节...

  • web前端 -- Day13 js基础

    作用域 作用域:适用范围。写代码要注意变量在哪声明和使用的问题。 全局变量和全局变量1、全局变量:声明的变量是使用...

  • JS毒瘤

    1. 全局变量 JS中所有的糟糕特性中,最为糟糕的一个就是它对全局变量的依赖。许多编程语言都有全局变量,JS的问题...

  • 全局变量释放的问题

    百度身份证识别,正面拍完,返回,拍背面,因为用了全局变量保存,导致没有释放报错。。。坑了几个小时才发现

  • 第07天C语言(00):笔记总结

    01-数组-内存存储细节 02-数组-注意点 03-数组-练习1 04-函数和数组1 05-数组和函数2 06-数...

  • #define 用法解析

    在开发中,会经常遇到申明全局变量的问题,而在Objective-C中,声明全局变量主要有#define、const...

网友评论

      本文标题:03-全局变量的细节问题

      本文链接:https://www.haomeiwen.com/subject/dldojttx.html