JavaScript常量和变量、表达式 —— 基础语法(3)
JavaScript基础语法(3)
常量和变量
编程实质上就是在对各种各样的数据进行处理。
在对数据进行处理的过程中,需要使用一个容器将数据保存起来,这样就可以实现对容器中的数据进行处理。
根据容器中保存的数据在程序运行的过程中可不可以改变,容器分成了两种:常量和变量
一、常量
常量就是一种恒定不变的数值或数据项。JS中的常量又称字面常量。
在JS中常量可以分为以下几种:在ES6版本以后,才引入了常量的定义语句::const,常量可分为:
- 整型常量:就是一个不可以改变的整数。
- 实型常量:就是实数或浮点数常量,也就是不变的小数。如: 12.32, 192.38, 也可以是5e7.
- 布尔常量:就两种true和false。
- 字符串型常量:就是字符串值。
- 空值:什么都没有。
二、变量
在JS中变量用来存放脚本的值,这样,在需要用到这个值的地方就可以用变量来代表。变量中的值可以是所有类型的数据值。
在JS里的变量,对变量类型要求不太严格,我们申明JS变量的时候,不必为每一个变量严格声明类型。
只需要用一个var就可以了:
var a = 100; //a是整数类型 var b = "abc"; //b是一个字符串类型 var c = true; //c是一个布尔类型
甚至var都可以不要:
a = 100; //a是整数类型 b = "abc"; //b是一个字符串类型 c = true; //c是一个布尔类型
规则上来讲在JS中变量可以不用提前申明,直接就可以用,但我们不建议这样,要养成先申明,后使用的良好的编程习惯!
JS中的变量和Java中一样,也分局部变量和全局变量:
- 局部变量就是在函数里定义的变量,作用域也就在函数体里;
- 全局变量就是定义在函数外面的变量,在整个文件中都有效。
注意:如果声明变量的时候,不写var,不管你这个变量在函数体里面还是外面,默认都是全局变量。
例子:
<script type="text/javascript"> var a1="北冥";//全局变量 show1(); function show1(){ var a2="最帅";//局部变量 a3 = "666";//全局变量 document.write("the a1 is "+a1+"<br>"); document.write("the a2 is "+a2+"<br>"); } document.write (a1); document.write (a2);//报错 document.write (a3); </script>
运行这段代码的时候,出错,undefined, 因为a2在函数show1里定义 是局部变量,出了函数show1,a2就被释放了。
注意:在有些情况下,同时使用全局变量和局部变量会出现逻辑错误,所以对于要在程序中的多个地方使用的变量一定要定义为全局变量,而且最好使用var命名,避免出现混乱!
注意:取变量名称的时候,基本的命名规则要遵守:变量名是大小写英文、数字、$和_ 的组合,且不能用数字开头。变量名也不能是JavaScript的关键字(保留字)。
表达式
表达式是JS中的一个“短语”,JS的解释器可以对它进行计算,从而生成一个值。 最简单的表达式是一个常量或者变量。
5.20 //一个数字常量 "beiming" //一个字符串常量 true //一个布尔常量 null //null常量 (2,3,3,3,5,3} //一个数组常量 i //变量i sun //变量sun
常量表达式的值就是其本身,变量表达式的值是该变量内保存的或者引用的数值。上面的表达式是最最简单的表达式,我们也可以通过组合,把简单表达式变成复杂表达式:i + 5.20。
可以看见,简单表达式变复杂实质上是通过运算符链接的,组合的。