js数据类型转换

数据类型转换

表单 prompt 获取过来的数据默认是字符型的,此时就不能直接简单的进行加法运算, 此时需要转换。

就是把一种数据类型的变量转换成另外一种数据类型。

通过调用系统函数进行类型转换,主要分3类:转 字符串、转 数值、转 布尔值

1 转换为字符串

方式说明案例
toString()把变量转成字符串var num= 1; alert(num.toString());
String() 强制转换把特殊值转成字符串String(undefined);
加号拼接字符串和字符串拼接的结果都是字符串var str = 215 + "我是字符串";
  • toString() 方法

    toString() 方法可把一个逻辑值转换为字符串,并返回结果

    布尔类型的 toString() 只会输出 "true" 和 "false"

var isFound = false;
alert(isFound.toString()); // 输出"false"
var num01 = 27; // alert(num01)输出"27"
var num02 = 27.37; // alert(num02)输出"27.37"
console.log(num01.toString())
  • String() 方法

    String()函数存在的意义:有些值没有toString(),这个时候可以使用String()。

var  timer = null;
console.log(String(timer));
  • 加号拼接字符串

    当 + 两边 一个是 字符串类型,另一个是 其它类型 的时候,会先把 其它类型 转换成 字符串 再进行字符串拼接,最后返回字符串

    alert(21 + "小白"); // 输出"21小白"
    alert(false + "小白"); // 输出"false小白"


2 转换为数值

我们前面说过,表单获取过来的数据默认是字符型,我们需要转换为数值型。

方式说明案例
parseInt(string) 函数将string类型参数转成整数parseInt('78')
parseFloat(string) 函数将string类型参数转成浮点数parseFloat('78.21')
Number() 强制转换函数  
js 隐式转换利用算术运算隐式转换- * /
  • parseInt(string) 函数

概念: 将 数值字符串 转成 整数数值

var numAge = parseInt("912"); // 912

执行规则:

//规则1.永远记住它是取整函数
var numLove = parseInt(18.08); // 18
var numLove = parseInt(18.88); // 18
​
//规则2.如果第一个字符不是数字符号或者负号,返回NaN
var numLove = parseInt("aboard211"); // NaN
​
//规则3.如果第一个字符是数字,则继续解析直至字符串解析完毕 或者 遇到一个非数字符号为止
var numLove = parseInt("520littlecat"); // 520
  • parseFloat(string)函数 猩猩

概念: 将 浮点数值字符串 转成 浮点数值

var num = parseFloat("12.3abc"); // 12.3

注意:parseFloat函数如果用来转换 整型数值字符串,则也是返回 整型数值

var num = parseFloat("12"); // 12,而不是 12.0
  • Number() 强制转换函数

    • 里面如果只要出现非数字字符或者undefined, 则就返回 NaN

    • 如果该值是空字符串、数字0、或null、false 则返回 0 如果是 true 则返回 1

  • 利用js隐式转换

    利用了js的弱类型的特点,进行算术运算,实现了字符串到数字的类型转换,我们也成为隐式转换。

var   str= '123 ';
var   x   =   str-0;
var   x   =   x*1; 

6.3 转换为Boolean值

方式说明案例
Boolean()函数将布尔字符串转成布尔值Boolean('true');
  • 代表 空、否定的值 会被转换为 false 有五种""、0、NaN、null、undefined

  • 其余任何值都会被转换为 true

var res = Boolean(''); // false
res = Boolean(0); // false
res = Boolean(NaN); // false
res = Boolean(null); // false
res = Boolean(undefined); // false
​
var res2 = Boolean('小白'); // true
var res2 = Boolean(12); // true
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值