今天无限互联Web全栈培训课程的内容是关于JavaScript 基础的,现在让我们看一看JavaScript变量和数据类型。希望对广大H5培训学员和H5爱好者有所帮助。
JavaScript中的变量为松散类型,所谓松散类型就是指当一个变量被申明出来就可以保存任意类型的值,就是不像SQL一样申明某个键值为int就只能保存整型数值,申明varchar只能保存字符串。一个变量所保存值的类型也可以改变,这在JavaScript中是完全有效的,只是不推荐。相比较于将变量理解为“盒子“,《JavaScript编程精解》中提到应该将变量理解为“触手”,它不保存值,而是抓取值。这一点在当变量保存引用类型值时更加明显。
JavaScript中变量可能包含两种不同的数据类型的值:基本类型和引用类型。基本类型是指简单的数据段,而引用类型指那些可能包含多个值的对象。
基本类型包括:Null、Undefined、Number、String、Boolean。引用类型主要包括:Object、Array、Date、RegExp、Function。
JavaScript数据类型:
编程语言的最根本的特征之一是一组它支持的数据类型。这些是可被表示和操纵的编程语言的值的类型。
无限互联H5培训课程:JavaScript变量和数据类型
JavaScript允许有三个基本数据类型:
数字如. 123, 120.50 等.
字符串如 "This text string" 等.
Boolean类型
Boolean俗称布尔,如 true 或 false.的JavaScript还定义了两种数据类型:null和undefined,其每一个仅限定一个单一的值。
Boolean类型仅包括两个值:true和false。这里有一个Boolean()转型函数,它可以对任意类型的值使用,作用就是将其它类型值转换为布尔型。转换规则主要如下。
String类型:非空字符串-true,空字符串("")-false
在JavaScript中字符串使用单、双引号没有区别,只是要注意起始与结束保持一致即可。JavaScript中也有转义字符,与其他语言基本一致,这里就不再赘述了。任何字符串都可以通过length属性来获取其长度。
var str = "Hello World";
alert(str.length); //11
这里简要说一个特点,ECMAScript中字符串一旦创建了就不能被改变,例如拼接某两个字符串,首先是创建一个新的字符串,将原有的字符串组合后装入其中,最后销毁原来的两个字符串。所以并不是像看上去那样进行简单的拼接。
Number类型:任何非0数-true,0与NaN-false
JavaScript中的Number类型支持十进制、八进制以及十六进制的数值。关于浮点型的数值这里有几点要注意,在JavaScript中,0.1与.1相同,但是这种省略的写法是不推荐的。由于保存浮点型所需的内存是整型的两倍,所以JavaScript会在适当的时候将不必要的浮点型转换为整型,比如浮点型的10.0会自动保存为整型的10。特别需要注意的一点是,浮点型运算精度远不如整型
Object型:任何对象-true,null-false
Undefined类型:false
Undefined类型只有一个特殊值即undefiend。所有未初始化的变量均会保存该值。
var aa;
alert(aa); //undefined
这里要注意一点,undefined与未定义的变量不同,如果在代码中调用某个未定义(申明)的变量。
但并非使用该转型函数才会使数据类型转换,当遇到if语句时会对数据进行自动的类型转换。自动类型转换有其优点也有弊端,这里不再扩展。重要的是通过Boolean转型函数理解转换规则,以便在编码中使用。
这里举个非常简单的例子:在某个app中需要通过检测本地是否缓存了用户ID来判断需不需要登录操作。
if (!localStorage["memberId"]) {
//登陆操作
}
这里当本地没有用户ID时,localStorage值为undefined,转换后为false值,非运算后为true,执行登录操作。而不需要写成localStorage["memberId"] === undefined等等。
除了这些基本的数据类型,JavaScript支持被称为对象的复合数据类型。我们会看到在一个单独的章节介绍对象细节。
注:Java不作整数和浮点值之间的区别。在JavaScript中的所有数字都表示为浮点值。JavaScript表示使用由IEEE 754标准中定义的64位浮点格式的数字。
JavaScript变量:
像许多其他的编程语言,JavaScript有变量。变量可以被认为是命名容器。您可以将数据放入这些容器,然后参考该数据简单地命名容器。
要在JavaScript程序使用一个变量,必须声明它。
存储在变量中的值被称为变量的初始化。可以在变量创建或更新的时候初始化,需要一个变量,如下所示:
例如,可以创建一个名为变量money和2000.50值,然后分配给它。对于另外一个变量,可以按如下初始化时分配一个值。
注意:使用var关键字只声明或初始化。一旦变量名称声明它的生命周期在整个文档中。不需要重新声明同一个变量两次。
JavaScript是类型化的语言。这意味着,JavaScript变量可以保存任何数据类型的值。不像许多其他语言,你不必在变量声明什么类型的值的变量将持有告诉JavaScript。变量的值类型可以在程序的执行过程中改变以及JavaScript会自动。
JavaScript变量范围:
一个变量的范围是程序中定义它的区域。 JavaScript变量将只有两个范畴。
全局变量: 全局变量具有全局范围,这意味着它是无处不在于定义JavaScript代码中。
局部变量: 局部变量将只在那里它被定义的函数是可见的。函数的参数是局部的功能。在一个函数的主体中,局部变量优先于具有相同名称的全局变量。如果声明具有相同名称作为一个全局变量,一个局部变量或函数参数,可以有效地隐藏全局变量。下面举例说明吧:
JavaScript的变量名:
虽然在JavaScript中变量命名保持以下几点规则。
不应该使用任何保留的JavaScript关键字作为变量名。这些关键字中提到的下一部分。例如,break 或者 boolean 变量名是无效的。
JavaScript变量名不应以数字开始(0-9)。他们必须以字母或下划线。例如,123test是无效的变量的名称,但 _123tes t是一个有效的。
JavaScript变量名称是区分大小写。例如,Name 和 name 是两个不同的变量。
H5培训机构首选无限互联H5培训,H5培训引领者,专注H5培训,用心做靠谱的H5培训机构。