变量声明
常量
- 常量是始终不能被改变的数据。比如:数字123可以是常量,字符串“hello”也是一个常量
- 常量通常用来表示固定不变的量,比如圆周率,万有引力常量
变量
- 从字面上看,变量是可变的量;从编程角度讲,变量是用于存储数据的容器
- 使用关键字var来声明变量;使用等号“=”向变量赋值;可以在声明变量时对其赋值,也可以先声明后赋值
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>标题</title>
<script>
// 1、先声明后赋值
var zxw;
zxw = "自学网";
alert(zxw);
// 2、边声明边赋值
var zxw2 = "自学网2";
alert(zxw2);
// 3、多变量一起声明(用,隔开)
var zxw3, zxw4;
zxw3 = "自学网3";
zxw4 = "自学网4";
// 4、多变量一起声明一起赋值(用,隔开)
var zxw5 = "自学网5", zxw6 = "自学网6";
</script>
</head>
<body>
</body>
</html>
变量命名注意事项
- 变量名不能以数字开头
- 可以使用中文作变量名,但最好不用中文
- 不能使用关键字命名
- 不能使用保留字命名
- 变量名只能以字母,_,$开头,余下的可以是字母,数字,_,$
- 命名一定要有意义,要便于识别,可以是英文,拼音,但一定要有意义
- js习惯的命名规范(驼峰命名法)
数据类型类型
typeof
:检测数据类型,是运算符,不是函数
- undefined:表示空变量,变量被声明但没赋值
- null:空对象,表示什么也没有,连声明都没有
- number:数值类型。整数或小数(浮点数);不要使用js做浮点运算,js浮点运算能力很差
- string:字符串类型;凡是用引号包起来的都是字符串类型,不管里面是文字还是数字
- boolean:布尔值。结果只有两种:true真或false假
- object:对象类型,数组属于特殊的对象
String 字符串
- 字符串是存储字符的变量
- 常量字符串:如“JavaScript”、“HTML5”。。。
- 变量字符串:如:var name = “OliGit”
- 可以使用 “+” 进行字符串的连接
- 在JavaScript中,字符串使用单引号或双引号来包括
- JavaScript中常用的转义字符
1、换行符:\n
2、回车符:\r
3、退格符:\b
4、反斜杠:\\
5、双引号:\"
Number 数字型
- JavaScript只有一种数字类型。数字可以带小数点,也可以不带
- 极大或极小的数字可以通过科学(指数)计数法来书写:3e4
- 数值可以通过运算符进行计算
- 浮点数值的最高精度是17位小数,但是在进行算术计算时精度远远不如整数。
- 数字可以写成十进制、八进制、十六进制
1、八进制在JS中表示是第一个位一定是0,后面就是八进制数字序列(0~7)
2、十六进制字面量前两位必须是0x,后面跟十六进制数字(0~9 及 A~F),字母 A~F 不区分大小写 - 注:科学计数法、八进制、十六进制表示的数,在输出时会转换成十进制
Boolean 布尔值
- 布尔型数据:只有两个值:true:真、false:假
- 将各种类型的值转化成Boolean类型的规则如下:
1、Number:任意非0的数值为true,0值和NaN为false
2、String:所有的非空字符串转化为true;“ ”(空字符串)转化成false
3、Object的任何对象都会转化为true
4、在JavaScript中,只要逻辑表达式不返回undefined、不返回null,就都是真的
Undefined
- 这是一个很有意思的数据类型,因为它的值只有一个,那就是undefined
- 在声明变量时,如果没有将变量赋值的话,这个变量也是属于Undefined类型的
- 如果一个变量没有声明就直接去访问解释器会报错误信息,但是这样的变量,如果使用typeof返回的结果也是undefined
Null 空值
- Null也是只有一个值的数据类型,它的值就是null,任何变量只要给其赋值为null,这个变量的数据类型就是Null类型
- 可以通过将变量的值设置为null来清空变量
- null和undefined的区别:
1、null:已定义,并初始化为null;undefined:未定义,或者未初始化
Array 数组
- 可以通过数组的下标来访问数组的元素
- 数组元素的顺序从0开始
Object 对象
- 在JavaScript中,所有的对象都继承自object对象
- 对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式(name:value)来定义
- 对象没有赋值的属性,该属性的值为undefined