zoukankan      html  css  js  c++  java
  • ES6_入门(3)_顶层对象属性

     1 //顶层对象属性:在ES5中,顶层对象的属性与全局变量是等价的.以下代码中,为顶层对象的属性赋值与全局变量的赋值,是同一件事。
     2         window.a=10;
     3         console.log(window.a);//10
     4         a=40;
     5         console.log(window.a);//40
     6 
     7         //2
     8         //顶层对象属性与全局变量挂钩的缺点:
     9         //(1)无法在编译时就报出变量未声明的错误。
    10         //(2)容易无意间创建全局变量。
    11         //(3)顶层对象的属性是到处可以读写的,不利于模块化编程。
    12         //(4)window对象是实体含义,指的是浏览器的窗口对象,顶层对象的是一个有实体含义的对象,不是很合适。
    13 
    14         //3 ES6规定
    15         // 为了保持兼容性,var命令和function命令声明的全局变量,依旧是顶层对象的属性;另一方面规定,let命令、const命令、class命令声明的全局变量,不属于顶层对象的属性。也就是说,从ES6开始,全局变量将逐步与顶层对象的属性脱钩。
    16 
    17         var a=1;
    18 
    19         console.log(window.a);//1
    20         let b=1;
    21         console.log(window.b);//undefined
  • 相关阅读:
    BestCoder Round #84
    codeforces#689BMike and Shortcuts
    POJ2985 并查集+线段树 求第k大的数
    Trie树模板 POJ1056
    新建zabbix数据库
    python输出菱形
    wmi获取计算机信息
    python测试IP地址是否ping通
    手机安装python环境
    Centos 8 安装zabbix 爬坑
  • 原文地址:https://www.cnblogs.com/LinSL/p/7159568.html
Copyright © 2011-2022 走看看