zoukankan      html  css  js  c++  java
  • js语法

       1、变量的声明和赋值,是分开的两个步骤,上面的代码将它们合在了一起,实际的步骤是下面这样。

    var a;
    a = 1;

    2、如果只是声明变量而没有赋值,则该变量的值是undefinedundefined是一个JavaScript关键字,表示“无定义”。
    var a;
    a // undefined

    3、如果变量赋值的时候,忘了写var命令,这条语句也是有效的。
    var a = 1;
    // 基本等同
    a = 1;
    但是,不写var的做法,不利于表达意图,而且容易不知不觉地创建全局变量,所以建议总是使用var命令声明变量。
    4、如果一个变量没有声明就直接使用,JavaScript会报错,告诉你变量未定义。
    5、可以在同一条var命令中声明多个变量。

    var a, b;
    6、JavaScript 是一种动态类型语言,也就是说,变量的类型没有限制,可以赋予各种类型的值。
    var a = 1;
    a = 'hello';

    上面代码中,变量a起先被赋值为一个数值,后来又被重新赋值为一个字符串。第二次赋值的时候,因为变量a已经存在,所以不需要使用var命令。
    7、如果使用var重新声明一个已经存在的变量,是无效的。
    var x = 1;
    var x;
    x // 1
    上面代码中,变量x声明了两次,第二次声明是无效的。
    8、如果第二次声明的同时还赋值了,则会覆盖掉前面的值
    var x = 1;
    var x = 2;
    
    // 等同于
    
    var x = 1;
    var x;
    x = 2;

    JavaScript引擎的工作方式是,先解析代码,获取所有被声明的变量,然后再一行一行地运行。这造成的结果,就是所有的变量的声明语句,都会被提升到代码的头部,这就叫做变量提升(hoisting)
    本文来自:http://javascript.ruanyifeng.com/



     
     
  • 相关阅读:
    Java中的HashMap
    单机百万连接调优和Netty应用级别调优
    简单排序(冒泡排序,插入排序,选择排序)
    使用AC自动机解决文章匹配多个候选词问题
    树状数组解决数组单点更新后快速查询区间和的问题
    LeetCode 763. Partition Labels
    LeetCode 435. Non-overlapping Intervals
    线段树
    无序数组求第K大的数
    KMP算法解决字符串匹配问题
  • 原文地址:https://www.cnblogs.com/shenq/p/7838775.html
Copyright © 2011-2022 走看看