JS-变量

什么是变量?什么是变量提升? var 和 let
    1,当为内存的某个区域指定一个有意义的标识符时,该标识符就叫做变量,这样,在编写代码时,我们就不必关心变量所表示的内存的实际位置了。变量所代表的是某个内存区域,存储在这个内存区域的数据在程序运行时是可以改变的。也就是说变量的取值在程序运行时是可以改变的,所以称为“变”量  
    2,在es5中用var进行申明
    3,在es6中用let申明 
    4,区别在于块级作用域,变量提升,没法重复申明
        var iname(变量名);    
        var -> 创建变量命令,告诉浏览器要创建一个新的变量
        iname -> 变量名(名字自己创建)    

命名规则:
    命名规则注意
    可以用字母,下划线和一些特殊符号组成
    1, 第一个字符可以是任意Unicode字母,以及美元符号($)和下划线(_)。
    2, 第二个字符及后面的字符,还可以用数字。

    命名的三种方法:
    1,匈牙利命名法
        匈牙利命名法关键是:
        1.1,标识符的名字以一个或者多个小写字母开头作为前缀(以数据类型作为前缀)
        1.2,前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。
        例:a_array o_object;


   2, 字母开头,驼峰命名法    
        例:avatarRunSpeed;

    3,帕斯卡命名法
        例:UserName;
        最后两种俗称为驼峰命名法,小驼峰和大驼峰。区别在于第一个单词首字母有没有进行大写

使用变量名的注意事项

关键字(reserved word)
 
在 JavaScript 中已经定义过的字,使用者不能再将这些字作为变量名使用

 另外,还有三个词虽然不是保留字,但是因为具有特别含义,也不应该用作标识符:Infinity、NaN、undefined。



变量提升
    js运行时候会把所有变量收集,并放在js开头位置。(函数也会提升)

标识符
    标识符是用来识别具体对象的一个名称。最常见的标识符就是变量名,
    以及后面要提到的函数名。JavaScript语言的标识符对大小写敏感,所以a和A是两个不同的标识符。
    标识符有一套命名规则,不符合规则的就是非法标识符。JavaScript引擎遇到非法标识符,就会报错。
命名规范:
   第一个字符可以是任意Unicode(万国码)字母,以及美元符号($)和下划线(_)。
   第二个字符及后面的字符,还可以用数字。
  中文是合法的标识符,可以用作变量名(这种方式不推荐)

常量 es6

常量就是在程序运行中,不会被改变的量
    例:
    const PI=3.14;


1,常量是块级作用域,作用域和let一样。
2,不能重新来赋值,也不能被重新定义,会直接报错!
3,在创建时候,常量需要被初始化,也就是赋值,否则会报错!
4,一个常量不能和它所在作用域内的其他变量或函数拥有相同的名称
5,值可以是任何类型,但无法重新赋值。对象属性不在保护范围内
6,没有强制规范命名,为了和变量区分,全部大写。
兼容性:ie 11 谷歌21

原文地址:https://www.cnblogs.com/llying/p/7440696.html