zoukankan      html  css  js  c++  java
  • 在函数前面加分号——;(function(){})()

    ;(function($,undefined){

      //代码...

    })()

      我们写代码每句的结束可以省略分号,但是分析器的自动分号插入,大多数场景下ASI会正确插入分号,不会产生错误。但ASI的分号插入规则非常复杂且很难记住,因此《编写可维护的Javascript》一书的作者推荐大家不要省略分号。其实很多新手都不会省略。

      一:这里的分号的作用:防止多文件集成成一个文件后,高压缩出现语法错误。

      二:js里面没有块级作用域,因而用(function(){})()闭包模拟作用域块,可以对变量起保护作用。

      三:undefined可以是1.只声明变量未初始化,如var a ; 2. 尚未定义的变量 如alert(b);函数中查找变量先搜寻内部变量,至最外层,undefined是搜索到全局环境时候仍未找到,我们都知道window是全局变量。在google的控制台输入window.undefined;也可看出undefined是window的一个属性。而这里将undefined声明为局部变量,当函数内要将变量与undefined比较的时候,就不需要搜索window,从而提升了性能。

       undefined派生于null,当输入undefined==null时,结果为true.一般不会定义变量为undefined,要声明空对象,可以 var a = null;

  • 相关阅读:
    Linux pwn入门教程(1)——栈溢出基础
    Java代码审计入门篇
    利用Burp Suite攻击Web应用
    记一次对某企业的渗透测试实战
    Python 绝技 —— UDP 服务器与客户端
    SQL注入之重新认识
    文件上传和WAF的攻与防
    phpMyAdmin 4.7.x CSRF 漏洞利用
    Powershell渗透测试系列–进阶篇
    AFN检測网络情况
  • 原文地址:https://www.cnblogs.com/chuyu/p/3130916.html
Copyright © 2011-2022 走看看