JavaScript 变量和数据类型
1.变量
1.1 什么是变量
白话:变量就是一个装东西的盒子
通俗:变量就是用于存放数据的容器。我们通过变量名获取数据,设置修改数据
本质:变量是程序在内存中申请的一块用来存放数据的空间
1.2 变量的使用
变量在使用时分为两步:1.声明变量 2.赋值
1.2.1 声明变量
//声明变量
var age; //声明一个名称为age的变量
var 是一个JS关键字,用来声明变量
age是变量名,我们要通过变量名来访问内存中分配的空间
1.2.2 变量的初始化
var age = 18;
console.log('age');
var myname = "张张";
console.log('myname');
1.3 变量使用
promot 浏览器弹出输入框
alert 警示框
console 控制台输出 给程序员测试用
1.4 变量语法
1.4.1 同时声明多个变量
同时声明多个变量时,只需要写一个var,多个变量之间用逗号隔开。
var name = 'zz',
age = '18',
price = '120000';
1.4.2 声明变量的特殊情况
1.只声明不赋值,结果为undefined。
2.不声明不赋值,结果报错。
3.不声明直接赋值,可以使用。
2.数据类型
2.1 数据类型的简介
2.1.1 为什么需要数据类型
在计算机中,不同数据占用的存储空间不同,为了便于分成所需内存大小不同的数据,充分利用存储空间,于是定义了不同的数据类型。
JavaScript是一种弱类型或者说动态语言。这意味着不用提前声明变量的类型,在程序运行过程中,类型会被自动确定。
var age = 18; //这是一个数字型
var foo = 'bar'; //这是一个字符串
在代码运行时,变量的数据类型是由JS引擎 根据 = 右边变量值的数据类型来判断,运行完毕后,变量就确定了数据类型。
JavaScript拥有动态类型,同时也意味着相同的变量可用作不同的类型
2.2 数据类型的分类
2.2.1 简单数据类型
简单数据类型 | 说明 | 默认值 |
---|---|---|
Number | 数字型、包含 整型值和浮点型值,如21、0.21 | 0 |
Boolean | 布尔值类型,如true、false,等价于1和0 | false |
String | 字符串类型,如“张三” 注意JS里面,字符串都带引号 | “” |
Undefined | var a;声明了变量a但是没有给值,此时a=undefined | undefined |
Null | var a = null; 声明了变量a为空值 | null |
数字型
在JS中八进制前面加0,十六进制前面加0x
数字型最大值 MAX_VALUE
数值型最小值MIN_VALUE
■ Infinity:代表无穷大,大于任何数值
■ -Infinity:代表无穷小,小于任何数值
■ NaN:Not a number,代表一个非数值
isNaN() 这个方法用来判断非数字 并且返回一个值 如果是数字返回的是false,如果不是数字返回的是true。
字符串型 String
“双引号” 和 ‘单引号’ 里面的数据
更推荐单引号
字符串中:外单内双、外双内单
字符串中转义字符以 / 开头
转义符 | 解释说明 |
---|---|
\n | 换行 |
\ | 斜杠\ |
’ | ’ |
" | " |
\t | tab缩进 |
\b | 空格 |
交互案例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
var age = prompt('请输入你的年龄');
alert('你已经'+ age +'岁啦');
</script>
</head>
<body>
</body>
</html>
布尔型 Boolean
true(1) / false(0)
undefined null
如果声明一个变量未赋值,就是undefined未定义数据类型
var variable = undefined;
console.log(variable + 'pink'); //undefinedpink
console.log(variable + 1); //NaN 不是一个数值
var space = null;
console.log(space + 'pink'); //nullpink
console.log(space + 1); //1
null 空值
typeof 获取变量数据类型
2.2.2 复杂数据类型
2.3 数据类型转换
使用表单、prompt获取过来的数据默认是字符串类型的,不能直接进行加法运算,需转换变量的数据类型。
2.3.1 转换为字符串
方式 | 说明 | 案例 |
---|---|---|
toSring() | 转换为字符串 | var num = 1;alert(num.toString()); |
String() 强制转换 | 转换为字符串 | var num = 1;alert(String(num)); |
加号拼接字符串 | 和字符串拼接的结果都是字符串 | var num = 1;alert(num + “我是字符串”); |
2.3.2 转换为数字型*
方式 | 说明 | 案例 |
---|---|---|
parseInt(string) 函数 | 将string类型转换为int类型 | parseInt(‘78’) |
parseFloat(string) 函数 | 将string类型转换为浮点数值型 | parseFloat(‘78.21’) |
Number() 强制转换函数 | 将string类型转换为数值型 | Number(‘12’) |
js 隐式转换(- * /) | 利用算术运算隐式转换为数值型 | ‘12’ - 0 |
2.3.3 转换为布尔型
方式 | 说明 | 案例 |
---|---|---|
Boolean()函数 | 其他类型转换为布尔值 | Boolean(‘true’); |
■ 代表空、否定的值会被转换为false,如’’、NaN、null、undefined