JavaScript中的数据类型与数据类型之间的转换

目录

数据类型

String字符串:

number数字:

Null空值与undefined未定义值:

Boolean布尔值:

object对象:

数据类型转换

强制类型转换为String:

强制转换数据类型为数字:

强制转换数据类型为布尔值:


数据类型

JavaScript中的数据类型如下表:

数据类型数据值
string字符串基本数据类型
number数字
null空值
undefined未定义
Boolean布尔值
object对象引用数据类型

在使用过程中,如不知道变量的数据类型,可使用typeof来输出变量数据类型。

console.log(typeof "数据值");

String字符串:

String字符串
 - 在js中字符串需要用引号引用起来
 - 使用单引号或者双引号都可以,但是不要混着用。如:'"
 - 引号不能嵌套,双引号不能放双引号,单引号不能放单引号。
    如:string = "我说:"你真帅!"";这是错误的。
    正确写法:string = '我说:"你真帅!"';
 - 如果非要选择引号嵌套,当表示一些特殊符号时可以使用“\”进行转义。
    如:string = "我说:\"你真帅!"";
 - 其中:
        \" 表示"    \' 表示'  \n 表示换行符   \n 表示制表符

number数字:

number数字
 - 在js中所有的数值都是number数字类型
 - 包括整数与浮点数(小数)
 - Number.MAX_VALUE可以查看js中number数字类型中的最大数值。
    如果数值超过最大值,则会返回一个Infinity,
    数值超过最小值,则会返回一个 - Infinity。
 - 其中NaN是一个特殊数字,表示not a number。其数据类型也是number。
 - 如果使用js进行浮点数的计算,可能会得到一个不精确的结果。所以不要使用js进行精确的数字计算。

Null空值与undefined未定义值:

Null空值
 - Null类型的值只有一个,就是null
 - null这个值专门用来表示一个为空的对象
 - 使用typrof检查一个null时,其数据类型不会返回null,而是返回object类型
undefined 未定义
 - undefined类型的值只有一个,就是undefined
 - 当声明一个变量时,但是并不给变量赋值,它的值就会是undefined。
 - 使用typeof检查时,它的值数据类型就是undefined。

Boolean布尔值:

Boolean布尔值
 - 布尔值只有两个,主要用来做逻辑判断,true 表示为真,false 表示为假。

object对象:

object对象
 - 除了以上五种数据类型,js中其他所有值都是对象值。
 - 对象属于一种复合的数据类型,在对象中可以保存多个不同的数据类型的属性
 - 对象分为内建对象,宿主对象,自定义对象。
 - 1.内建对象
            - 有ES标准中所定义的对象,在任何ES实现中都可使用。如:String number.......
 - 2.宿主对象
            - 由js的运行环境所提供的对象。如BOM DOM
 - 3.自定义对象
            - 由开发人员自己创建的对象
 - 创建对象要使用new关键字来调用构造函数constructor来创建对象。
    如:var "对象名" = new Object();
 - 对象中属性值的添加语法如:对象名.属性名=属性值;

数据类型转换

 在实际使用中我们会使用到不同的数据类型,有时要对数据类型进行转换。主要的转换方式如下。

强制类型转换为String:

将其他的数据类型转换为String
 - 方法一:
         - 调用被转换数据类型的toString()方法
         - 该方法不会影响到原变量,它会将转换的结果返回。
         - 但是:null和undefined数据类型没有toString方法,如果调用该方法,会报错。
         - toString方法使用模板:toString("要进行强制转换的数据")。
         如:var a = 1;a的数据类型为number。
             b= a.toString();b为a的数据转换类型,b数据类型为string。
 - 方法二:
         - 调用String()函数,并将被转换的数据作为参数传递给函数。将定义的变量转换为字符串。
         - 使用String()函数做强制类型转换时,
                对于Number和Boolean实际上就是调用其toString()方法
                但是对于null和undefined,就不会调用toString()方法
                它会将null直接转换"null",将undefined直接转换为"undefined"
         - String函数调用模板:String("要进行转换的数据")。
         如:var a = 1;a的类型为number。
             b = String(a);b为a的数据转换类型,b数据类型为string
         
         

强制转换数据类型为数字:

将其他的数据类型转换为Number
 - 方法一:
        使用Number()函数
           1.如果转换的字符串为纯数字,则直接将其转换为数字
           2.如果字符串中有非数字的内容,则转换为NaN
           3.如果字符串是一个空字符串或者是一个全是空格的字符串,则转换为0
           4.布尔值的转换:true转换为数字类型为1,false转换为数字类型为0.
           5.undefined的数字转换为数字NaN
 - 方法二:
        这种方式只用于字符串
        parseInt()把一个字符串转换为一个整数
        parseFloat()把一个字符串转换为一个浮点数
        parseInt()作用和parseFloat()相似,不同的是它可以获得有效的小数
        如果对非String使用parseInt()或parseFloat()它会现将其转换为String,然后再操作

强制转换数据类型为布尔值:

将其他数据类型转换为布尔值:
 - 调用Boolean()函数用于转换数据
    - 数字类型转换为布尔值:除了0和NaN转换的布尔值都为false,其他的值都是true。
    - 字符串类型转换为布尔值:除了空字符串转换的布尔值都为false,其他的值都是true。
    - null和undefined都会转换为false。
    - 对象也都会转换为true

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杂乱无章的我

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值