1、JavaScript 数据类型
编程语言最基本的特征之一是它所支持的数据类型集。这些是可以用编程语言表示和操作的值类型。
JavaScript允许使用三种原始数据类型:
1)number
例如,520
,1314
,12.34
2)string
例如,"cjavapy"
3)boolean
例如,true
或 false
JavaScript还定义了两种简单的数据类型,null
和undefined
,每一种类型只定义一个值。除了这些原始数据类型外,JavaScript还支持称为对象的复合数据类型。
ES6新增的两种基本数据类型:Symbol
与 BigInt
:
BigInt:提供了一种方法来表示大于2^53-1
的整数。BigInt
可以表示任意大的整数。
例如,
Symbol:一种在ES6 中新添加的数据类型,本质上是一种唯一标识符,可用作对象的唯一属性名,其他人就不会改写或覆盖你设置的属性值。
注意:JavaScript不区分整数值和浮点值。JavaScript中的所有数字都表示为浮点值。JavaScript使用IEEE 754标准定义的64位浮点格式表示数字。
2、JavaScript变量(var)
与许多其他编程语言一样,JavaScript也有变量。变量可以被认为是命名容器。可以将数据放入这些容器中,然后通过命名容器来引用数据。
在JavaScript程序中使用变量之前,必须声明它。变量用var关键字声明如下。
<script type = "text/javascript"> var name; var age; </script>
也可以声明多个变量与相同的var关键字如下:
<script type = "text/javascript"> var name,age; </script>
在变量中存储一个值称为变量初始化。可以在创建变量时进行变量初始化,或者在稍后需要该变量时进行变量初始化。
例如,可以创建一个名为age的变量,稍后将值30赋给它。对于另一个变量,可以在初始化时为其赋值,如下所示。
<script type = "text/javascript"> var name = "cjavapy"; var age; age = 30; </script>
注意:var关键字仅用于声明或初始化,在文档中任何变量名的生命周期内使用一次。不应该重复声明同一个变量两次。
JavaScript是无类型语言。这意味着JavaScript变量可以保存任何数据类型的值。与许多其他语言不同的是,不必在变量声明期间告诉JavaScript变量将保存哪种类型的值。变量的值类型可以在程序执行期间改变,JavaScript会自动处理它。
3、JavaScript变量作用域
变量的作用域是在程序中定义它的区域。JavaScript变量只有两个作用域。
1)全局变量具有全局作用域,这意味着它可以在JavaScript代码的任何地方定义。
2)本地变量只在定义它的函数中可见。函数参数总是局部于该函数。
在函数体中,局部变量优先于同名的全局变量。如果声明一个与全局变量同名的局部变量或函数形参,就有效地隐藏了全局变量。看看下面的例子。
<html> <body onload = checkscope();> <script type = "text/javascript"> var myVar = "global"; // 声明一个全局变量 function checkscope( ) { var myVar = "local"; // 声明一个局部变量 document.write(myVar); } </script> </body> </html>
4、JavaScript变量名
1)在JavaScript中命名变量时,需要以下规则。
不应该使用任何JavaScript保留的关键字作为变量名。这些关键字将在下一节中提到。例如,break
或布尔变量名无效。
2)JavaScript变量名不应该以数字(0-9)开头。必须以字母或下划线开头。例如,123test
是无效的变量名,而_123test
是有效的变量名。
3)JavaScript变量名区分大小写。例如,Name
和Name
是两个不同的变量。
5、JavaScript 保留关建字
下表给出了JavaScript中所有保留字的列表。它们不能用作JavaScript变量、函数、方法、循环标签或任何对象名。
abstract | else | instanceof | switch |
boolean | enum | int | synchronized |
break | export | interface | this |
byte | extends | long | throw |
case | false | native | throws |
catch | final | new | transient |
char | finally | null | true |
class | float | package | try |
const | for | private | typeof |
continue | function | protected | var |
debugger | goto | public | void |
default | if | return | volatile |
delete | implements | short | while |
do | import | static | with |
double | in | super |