这是我参与「第四届青训营 」笔记创作活动的的第6天
1.JS数据类型
JS中有几种数据类型
JS中一共有六种数据类型,其中数据类型指字面量类型。
基本数据类型:
- String 字符串
- Number 数值
- Boolean 布尔值
- Null 空值
- Undefined 未定义
引用数据类型:
- Object 对象
String 字符串
在JS中字符串需要用引号引起来(如果不加“”则会变成Undefined未定义)。
<script>
var str = "hello";
console.log(str);
</script>
用双引号或者单引号都行,但是注意不要混用。并且引号不能嵌套使用。
转义:用\"表示", \'表示' , \n表示换行 , \t表示制表符 , \\表示\
Number 数值
所有数值都是Number类型,包括整数和浮点数(小数)。
<script>
// 数字
var a = 123;
// 字符串
var b = "123";
</script>
如何希望检查,可以使用一个运算符typeof检查变量类型。
<script>
var a = 123;
console.log(typeof a);
</script>
JS中可以表示的数值最大值是1.7e+308 Number.Max_VALUE,若超过最大值则是Infinity表示正无穷大,若是相反则是-Infinity。
非法数字NaN表示 (Not a Number)类型也是Number。Number.Min_VALUE为5e-324。
<script>
var c = 123 + 456;
console.log(c);
</script>
使用JS进行浮点计算,会得到一个不精确的值,因此请勿对JS进行精确度要求高的计算。
Boolean 布尔值
只有两个值。
true真false假
Null类型的值
只有null。专门用来表示一个空的对象。
typeof null返回Object。
Undefined 未定义
当声明一个变量,未赋值,就是Undefined
typeof undefined返回Undefined。
2.强制类型转换
强制类型转换:Number、Boolean、String。
将其他数据类型转换为String
方式一: 调用被转换类型的toString()方法。
<script>
// 该方法不会影响原变量
var a = 123;
var b = a.toString();
</script>
但是要注意Null和Undefined 没有toString()方法,如果调用会报错。
方式二:调用String()函数,将被转换的数据作为参数传递。
<script>
// 该方法不会影响原变量
var a = 123;
String(a);
</script>
String()对于Number和Boolean是toString(),对Null和Undefined转换为"Null""Undefined"
转换为Number (注:没有toNumber()方法)
转换方式一:调用Number()方法
字符串转换为数值
1.如果是纯数字,直接转换为数字
2.如果字符串中有非数字的内容,转换为NaN
3.如果空串为0,或全空格为0
布尔——>数字 , Undefined ——>NaN , true ——>1 ,false ——>0 , Null ——> 0
转换方式二:parseInt()把字符串转换为一个整数
可以将字符串中有效的整数取出来,parseFloat()作用与parseInt()类似取出有效的小数。
注:如果对String使用parseInt()或parseFloat()会先将其转换为String然后再操作。
转换为Boolean
使用Boolean()函数将a转换为布尔值
var a = 123;
// 为真
a = Boolean(a);
// 为假
a = 0 ;
// 为真
a = Infinity;
数字——>布尔,除了0和NaN都是true。字符串,除了空串,都是true(空格也是true),Null和Undefined都会转换为false,对象也会转换为true。