前端开发 | 青训营笔记

53 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的的第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。