学习目标
学习JS基础,与HTML结合形成小交互
学习内容
- JS的数据类型
- typeof 检测数据类型
- JS的数据类型转换
一、JS的数据类型
基本数据类型 | 说明 | 默认值 |
---|---|---|
Number | 数字型 包含整型值和浮点数值 eg. 20、2.0 | 0 |
Boolean | 布尔值类型 如true、false,等价于 1 和 0 | false |
String | 字符串类型 在JS中,字符串都带引号 | "" |
Undefined | var a; 声明了变量a但是没有给值,此时 a = undefined | undefined |
Null | var a = Null; 声明了变量a为空值 | null |
1.数字型Number的三个特殊值
- Infinity,代表无穷大,大于任何数值 //1.7976931348623157e+308
- -Infinity,代表无穷小,小于任何数值 //5e-324
- NaN,Not a number,代表一个非数值
2.isNaN() 函数
3.字符串型String的引号嵌套
JS可以用单引号嵌套双引号,也可以用双引号嵌套单引号
//字符串引号嵌套
var str1 = "她说'hello world'"
var str2 = '她说"hello world"'
4.字符串转义符
转义符 | 解释说明 |
---|---|
\n | 换行符, n是newline的意思 |
\\ | \ 斜杠 |
\' | ' 单引号 |
\" | " 双引号 |
\t | tab缩进 |
\b | 空格,b是blank的意思 |
5.Boolean、Undefined 和 Null
Boolean有两个值:true 和 false,用于数值型相加时,true为1 false为0
console.log(true + 1) // 2
console.log(false + 1) // 2
声明后没有被赋值的变量会有一个默认值 undefined
var variable;
console.log(variable) // undefined
console.log('你好' + variable) // 你好undefined
console.log(1 + variable) // NaN
console.log(true + variable) // NaN
一个声明变量给null值,里面储存为空
var vari = null;
console.log('你好' + vari) // 你好null
console.log(10 + vari) // 10
console.log(true + vari) // 1
二、typeof 检测数据类型
//typeof 检测数据类型
var num = 10
console.log(typeof num) // number
var str = 'wdnmd'
console.log(typeof str) // String
var flag = true
console.log(typeof flag) // Boolean
var vari = undefined
console.log(typeof num) // undefined
var timer= null
console.log(typeof timer) // object
三、JS数据类型的转换
1.转换为字符串
方式 | 说明 | 案例 |
---|---|---|
toString() | 转成字符串 | var num = 1; alert(num.toString()) |
String()强制转换 | 转成字符串 | var num = 1; alert(num.String()) |
加号拼接字符串 | 和字符串拼接的结果都是字符串 | var num = 1; alert(num + '字符串') |
2.转换为数字型
方式 | 说明 | 案例 |
---|---|---|
parseInt(String)函数 | 将string类型转成整数数值型 | parseInt(‘6657’) |
parseFloat(String)函数 | 将string类型转成浮点数数值型 | parseFloat(‘6.54’) |
Number() 强制转换函数 | 将string类型转成数值型 | Number('213') |
js 隐式转换 ( * - /) | 利用算数运算隐式转换为数值型 | '11' - 0 |
2.转换为Boolean
- 代表空、否定的值会被转换为false ,如''、0、NaN、null、undefined
- 其余值都会被转换为true
console.log(Boolean('')) // false
console.log(Boolean(0)) // false
console.log(Boolean(NaN)); // false
console.log(Boolean(null)) // false
console.log(Boolean(undefined)) // false
console.log(Boolean('小白')) // true
console.log(Boolean(12)) // true