●数据类型的分类
在计算机中,不同的数据所需占用的存储空间是不同的,为了便于把数据分
成所需内存大小不同的数据,充分利用存储空间,于是定义了不同的数据类型。
js是一个工具,为了解决生活中各种各样的需求,需要不同的数据类型姓名
年龄薪资等
简单来说,数据类型就是数据的类别型号。
-
基本数据类型
-
数值Number
-
整数100
-
浮点数100.5
-
科学计数100e2
-
二进制 八进制 十六进制
-
lnfinity -lnfinity正无穷,负无穷
-
NaN
-
-
字符串String
被引号包裹的内容就是字符串
""
''
``
都是成对出现的 一旦找到另外一个 整个字符串结束
’ “ ‘=>绝对不可以
-
布尔类型Bool
-
true
-
false
-
undefined Undefined 空
-
空 Null
null
-
复杂数据类型
-
-
-
字面量
一个数值 一个字符串 true都是一个字面量
1. 数值字面量 1 1.23 0xff 0b1010 0o767
2. 字符串字面量 'hello' "hello" `hello`
3. 布尔字面量 true false
4. null字面量 null
5. undefined字面量 undefined
#### 数字的范围
alert(Number.MAX_VALUE); // 注意大小写
alert(Number.MIN_VALUE); // 注意大小写
isNaN()
NaN Not a Number 非数字
isNaN() 判断一个值是否是NaN 非数字
console.log(isNaN(666)); 666 是数字 所以结果是false
console.log(isNaN('test')); test 不是数字 所以结果是true
JS把数据类型分为两类:
-
基本数据类型(Number ,String,Boolean,Undefined,Null)也可以叫简单
-
复杂数据类型(object) ●是指我们存储在内存中的数据的类型 ●我们通常分为两大类基本数据类型和复杂数据类型
-
数据类型代码演示
-
<script>
// 数值类型
// 1. 整数
// console.log(123,-123,0);
// // 2. 浮点数
// console.log(1.23,3.14,-9.99);
// // 3. 科学计数法// console.log(1.23e10,1.23e-10);
// // 4 . 其它进制
// // 0b 二进制
// // 0o\0 八进制
// // 0x 0X 十六进制
// console.log(0xff,0xa5b4c3,0b1010,0o767);
// // 转成十进制以后输出// // 5. 正无穷 和负无穷
// console.log(Infinity,-Infinity);// 6. NaN Not a Number
// 先欠着
// 字符串类型// 1. 单引号
var str1 = 'hello world';
// 2. 双引号
var str2 = "hello world";
// 3. 反引号
var str3 = `hello world`;var str4 = 'hello world';
// alert(str4);
var str5 = `hello
world`;// alert(str5);
// 单引号 双引号 反引号的区别
// 单引号双引号 不支持换行 必须借助转义字符
// 反引号 支持换行 原样输出// 反单引号 可以直接解析变量
var name = '张三';
// alert('我的名字叫name');
// // ${} 可以解析变量 它里边的表示变量名
// alert(`我的名字叫${name}`);// 练习 自我介绍
// 声明4个变量 name age address interesting
// 我的名字叫张三 我今年18岁 我来自北京 我喜欢吃饭睡觉打豆豆
// var name = prompt('请输入你的名字');
// var age = prompt('请输入你的年龄');
// var address = prompt('请输入你的地址');
// var interesting = prompt('请输入你的爱好');
// console.log(`我的名字叫${name} 我今年${age}岁 我来自${address} 我喜欢${interesting}`)
// 布尔类型
// 1. true 在内存中存储的是1 真 对
// 2. false 在内存中存储的是0 假 错// console.log(true+10); // 1+10 11
// console.log(false+10);// 0+10 10
// null 和 undefined
var test;console.log(test);
// 只声明了变量 没有赋值 结果undefined
// undefined 未定义 表示没有
// 本应该有一个值 但是目前没有值 所以叫做undefined// null 空
// 我们肯定需要一个空箱子 但是放什么东西还没想好
// 暂时拿个东西占着位置 以后再放东西 一般用null来占
// 位置
// 字面量// 1. 数值字面量 1 1.23 0xff 0b1010 0o767
// 2. 字符串字面量 'hello' "hello" `hello`
// 3. 布尔字面量 true false
// 4. null字面量 null
// 5. undefined字面量 undefined
// 数字的范围
// alert(Number.MAX_VALUE); // 注意大小写
// alert(Number.MIN_VALUE); // 注意大小写
// alert(Number.MAX_VALUE*2); // Infinity
// alert(-Number.MAX_VALUE*2);// -Infinity// NaN Not a Number 非数字
// isNaN() 判断一个值是否是NaN 非数字
console.log(isNaN(666)); // 666 是数字 所以结果是false
console.log(isNaN('test')); // test 不是数字 所以结果是true
</script>
字符串重点
-
-
-
引号的嵌套
''
""
`` 能解析变量 里边的内容原样显示
嵌套: 一对单引号中包裹一对双引号或者一对反单引号 一对双引号中包裹一对单引号或者一对反单引号 一对反单引号中包裹一对双引号或者一对单引号 注意: 拒绝交叉嵌套
// var name = '陌上人如玉,'公子'世无双'; // 报错 // var name = '陌上人如玉,"公子"世无双'; // 对 // var name = '陌上人如玉,`公子`世无双'; // 对 // // var name = '陌上人如玉,"公子'世无双"; // 报错
-
转义字符
\n 换行 \t tab键 \\ 原样显示\
-
字符串的长度
字符串.length;
-
字符串的拼接
// + 两边如果都是数字 那么相加 // + 左右只要有一个是字符串 那么就是拼接 // 拼接就是连在一起
-
-
小练习 1.基本数据类型有哪些?举例并打印 // 数值类型 Number var num1 = 100; var num2 = 100.5; var num3 = 100e5; var num4 = 0o77; var num5 = Infinity; // 字符串 var str1 = 'test123'; // 建议使用单引号 // js 依托于html html标签的属性双引号 所以js的字符串建议单引号 var str2 = "haha"; var str3 = `helloworld`; //等号两边各留一个空格 // 布尔 var b1 = true; var b2 = false; // undefined var u1; // null var test = null; // test 这个箱子 我肯定要 具体放什么没想好 // 临时用null 先填充 2.判断一个值是否是非数字? isNaN(); // 如果是非数字 true 否则 false