JavaScript的基本数据类型

以下都是JS内置的几种类型
| 数据类型 | 描述 |
|---|---|
| number | 数字,不区分整数和小数 |
| string | 字符串类型 |
| boolean | true 真, false 假 |
| undefined | 表示未定义的值 |
| null | 只有唯一的值 null,表示空值 |
number 数字类型
JavaScript 中不区分整数和浮点数,统一都使用 “数字类型” 来表示
示例代码
<script>
let a =10;
console.log(typeof(a))
a= a/3
console.log(a)
console.log(typeof(a))
</script>
运行结果

特殊的数字值:
Infinity:无穷大, 大于任何数字,表示数字已经超过了 JS 能表示的范围.
-Infinity: 负无穷大, 小于任何数字,表示数字已经超过了 JS 能表示的范围.
NaN: 表示当前的结果不是一个数字
1.Infinity的示例代码
<script>
console.log(10/0)
</script>
运行结果

2.-Infinity的示例代码
<script>
console.log(-10/0)
</script>
运行结果

3.NaN的示例代码
<script>
console.log("hahaha"-1)
</script>
运行结果

string 字符串类型
注:字符串字面值需要使用引号引起来,单引号双引号均可
示例
<script>
let a ='哈哈哈'
a = 'JS'
</script>
字符串中本身已经包含引号的情况
1.正确搭配使用单双引号
示例1:
<script>
let a ='js'
a ="哈哈哈'js'"
</script>
示例2:
<script>
let b = "js"
b = '哈哈哈"js"'
</script>
2.使用转义字符 \ " 来表示字符串内部的引号
示例:
<script>
let name = "liaofeiyang"
name = "my name is \"liafeiyang\""
alert(name)
</script>
运行效果

一些其它的转义字符,比如: \t => t ,\n => n ,\\ => \
字符串求长度
使用 String 的 length 属性即可
示例代码
<script>
let a = "哈哈哈"
console.log(a.length)
</script>
运行效果

字符串拼接
使用
+进行拼接
示例代码
<script>
let a = "小白"
console.log("fly: "+ a)
</script>
运行结果

数字和字符串也可以进行拼接
示例
<script>
console.log("10" + 10)
</script>
运行结果

boolean 布尔类型
表示 “真” 和 “假”,当Boolean参与运算时会被做 1 和 0 来看待,和 C 语言一样
示例1
<script>
let a = true
console.log(typeof(a))
a = a + 1
console.log("a的值等于:"+a+" a的类型:"+typeof(a))
</script>
运行结果

示例2
<script>
let a = false
console.log(typeof(a))
a = a + 1
console.log("a的值等于:"+a+" a的类型:"+typeof(a))
</script>
运行结果

undefined 未定义数据类型
1.如果一个变量被定义了,但是没有被赋值,也就是没有被初始化过, 此时这个变量就是 undefined, 是 undefined 类型的
示例代码
<script>
let a;
console.log(a)
</script>
运行结果

2.undefined和字符串进行相加, 结果是进行字符串拼接
示例代码
<script>
let a;
console.log(a + "10")
</script>
运行结果

3.undefined和数字进行相加,结果为NaN
示例代码
<script>
let a;
console.log(a + 10)
console.log(a + true)
</script>
运行结果

null 空值类型
null 表示当前的变量是一个 “空值”
注: null 和 undefined 都表示取值非法的情况, 但是侧重点不同
undefined 表示当前的变量未定义,而 null 是被定义/被赋值了的,只不过它的值就是 null
示例代码
<script>
let a;
let b = null;
console.log(a + 10); //运行结果为NaN
console.log(b + 10); //运行结果是10
</script>
运行结果




![LeetCode 刷题 [C++] 第226题.翻转二叉树](https://img-blog.csdnimg.cn/direct/b95f6cf4db03439380eca20a6b2eecfa.png)















