第三章 JavaScript中的数据间类型的转换

数据的类型转换分为强制类型转换非强制类型转换,强制类型转换也可以称为显示转换,非强制类型转换也可以称为隐式转换

一,字符串------>数字

1.parseInt() 取整

首先我们先创建一个字符串类型的变量,接下来用下面的代码来演示一下。
接下来用parseint()方法,最后在检测一下他的数据类型

           var num = "123";
           var index = parseInt(num);
           console.log(typeof index);

很明显由字符串类型转换为了数字类型
parseint方法

  • 同时用parseint()方法也可以将小数转换为整数
 var text = "123.444" 
  var text1 = parseInt(text); 
 console.log(text1);

parseint()

  • 如果是数字加上文字的形式用parseint()方法会转换为什么呢?
 var str = "123侯旭";
 console.log(parseInt(str));

parseint())

  • 如果全是文字呢?
var str1 = "侯旭";
 console.log(parseInt(str1));

str
如果全是文字的她就会转换为NaN.那么下面来解释一下什么是NaN呢,
NaN:不是一个数字 NaN不等于任何值 (包括本身)


2.Math.abs();取绝对值 正数
var str1 = "123";
console.log(Math.abs(str1));

math.abs)()

3.parseFloat();取浮点数
var text = "123.444"
  console.log(typeof parseFloat(text));

parseFloat

  • 而且parsefloat只会保留一个小数点
 var text = "123.444.1.2.56";
 console.log(parseFloat(text));

parseFloat

4.number()方法
var txt = "1234";
console.log(Number(txt));
console.log(typeof Number(txt));

number()

5.乘数字

乘1 或者加1


接下来讲讲parseint()和parsefloat的区别

都可以进行字符串转数字
包含非数字的时候,number()会返回NaN,parseint()看情况,如果文字开头返回NaN如果数字开头,返回合法数字部分。


二, 数字------>字符串

####1.tostring();

var num = 123;
        console.log(typeof toString(num));

tostring()

2.string();
        var num = 123;
        console.log(typeof String(num));

string()
那么tostring()和string都可以转换为字符串类型,而二者的区别是什么呢

tostring()和string()的区别
举个例子

       var index = undefined;
       console.log(tostring(index));

区别

区别:tostring()不可以转换undefined和null。

三,数字------>布尔值

  • Boolean();
console.log(Boolean(0));

Boolean

0转换为布尔值为false
非0转换为布尔值为true
#二,隐式转换
是因为js的数据类型不严谨

  • 数字---->字符串

     var x = 123;
     var y ="123";
     var xy = x*y;
     console.log(typeof xy);    
    

隐式转换

1.数值操作
**向上取整 有小数部分 整数部分+1**

写法: Math.ceil()

   var x = 123.79;

   console.log(Math.ceil(x) );   

Math.ceil()

  • 向下取整 舍弃小数部分 和parseint()类似

写法:Math.floor()

      var x = 123.79;
 
      console.log(Math.floor(x) );    

Math.floor(

  • Math.max();返回两者间最大值
  • Math.min();返回两者间最小值
  • Math.random(),0-1间的随机数

扩展:面试题
null和undefined的区别?

答:
1.null是关键字,undefined不是
2.null代表空,undefined代表是未定义
3.null转换为数字为0 undefined为NaN

null也可以用清除内存

            = 赋值
            == 等于 
            ===全等于(值和数据类型都得相同)

isNaN()
用number方法转换一下,会将里面的字符串转换为数字 isNaN(“123”); 返回值false
Boolean()
如果内部为空 转换为false,如果有值就是true

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

开心亿点

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

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

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

打赏作者

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

抵扣说明:

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

余额充值