一、语言特性
        1、预解析:js会把变量的声明(仅仅是声明)提到顶部,但是不会突破作用域。
                alert(a);var a= 12; //结果,undefined
        2、页面无论多长都会进行预解析。
        3、js语言执行步骤:
                读取一个script标签=>预解析=>执行里面代码=>读取下一个script=>预解析=>执行代码
        4、函数也有预解析,但是要注意:当以变量的形式声明的函数,预解析会按照变量的特性走,否则不按照。
                    a();//报错了。
                   var a=function(){
                    alert(1);
                    }
二、严格模式:
    代码前边加‘use strict’【好处】,有作用域,高级浏览器兼容,ie9-不兼容。

                好处:  1. 解决了局部函数中this是 window的bug;
                           2. 解决了不加val 声明变量的bug
                           3.避免在if switch,for while for in 里面定义函数。
                           4.with(元素.style){//严格模式下删除了with.
                               
                            }
               严格模式是有作用域的,
                        1、函数    在函数里面写就是只限于函数。
                        2、script标签
                使用严格模式,'use strict'前边不能有代码

最新文章

  1. Net设计模式实例之单例模式( Singleton Pattern)
  2. 通过Ajax使用FormData对象无刷新上传文件
  3. linux命令之tail
  4. ural 2063. Black and White
  5. hdu1879 继续畅通工程
  6. 记录一下centos安装httpd+php+mysql的过程
  7. [转]使用openssl库实现RSA、AES数据加密
  8. HTML5新特性: 自定义属性前缀data-以及dataset的使用
  9. python 下划线--完美解释
  10. android---EventBus的简单使用(一)
  11. 如何使用Git提高研发团队工作效率?
  12. 04-python3.5-模拟三级菜单-省-县-区域--01
  13. Jupyter Notebook 快捷键使用指南
  14. lombok注解介绍
  15. AGC 007D.Shik and Game(DP)
  16. SI和DI
  17. 23种设计模式(1)-Facade设计模式
  18. luogu P4108 [HEOI2015]公约数数列——solution
  19. ZOJ-3329 One Person Game (有环期望问题)
  20. 双击CAD对象,显示自定义对话框实现方法

热门文章

  1. opencv——通过面积筛选最大轮廓,并求凸包矩形的长和宽
  2. zookeeper DataTree内存模型介绍及对Znode的四大特性介绍和Stat结构分析
  3. C++友元(友元函数、友元类和友元成员函数)
  4. 使用 dlv 调试go 程序
  5. iOS 安装包瘦身(下篇)
  6. 「NOIP 2013」 货车运输
  7. linux 修改主机名 【root@主机名 ~】
  8. Arch下error: signature from "NAME<EMAIL ADD>"
  9. 拓扑排序+DP CF721C Journey
  10. 51nod1847 奇怪的数学题 (Min_25筛+第二类斯特林数)