zoukankan      html  css  js  c++  java
  • JS-用var声明变量和不用var声明变量的区别

    当不用var声明一个JavaScript全局变量时,实际上是定义了全局对象的一个属性。(在客户端的JavaScript中,在浏览器窗口中的所有JavaScript代码中,Window对象充当了全局对象。)

    当使用var声明一个变量时,创建的这个属性是不可配置的,也就是说这个变量无法通过delete运算符删除。如果你没有使用严格模式并给一个未声明的变量赋值的话,JavaScript会自动创建一个全局变量。以这种方式创建的变量时全局对象的正常的可配置属性,并可以删除他们。

    var var_true = 1; // 声明一个不可删除的全局变量
    var_fake = 2; // 创建全局对象的一个可删除的属性
    this.var_fake2 = 3; // 同上
    
    delete var_true //=> false:变量无法被删除
    delete var_fake //=> true:变量被删除
    delete this.var_fake2 //=> true:变量被删除
  • 相关阅读:
    GoF23:工厂模式(Factory)
    CSS
    HTML
    JSP基础学习
    JSTL标签
    Jsoup
    Centos7下tomcat关闭异常问题
    剑指Offer_#18_删除链表的节点
    剑指Offer_#17_打印从1到最大的n位数
    剑指Offer_#16_数值的整数次方
  • 原文地址:https://www.cnblogs.com/fydxx/p/6668718.html
Copyright © 2011-2022 走看看