JS数值转换

JS数值转换的方式有4种:Number(),parseInt(),parseFloat(),数据类型*1或者/1。

他们的区别在于:

1.Number():可以将非数值转为数值

如果是Boolean值,true和flase将分别被转换为1和0

如果是数字,那么就是简单的传入和返回

如果是null值,那么返回0

如果是undefined,那么返回NaN

console.log(Number(true));//

console.log(Number(false));//

console.log(Number(10));//

console.log(Number(null));//

console.log(Number(undefined));//NaN

如果是字符串,那么又有如下的规则:

如果字符串只包含数字,则将其转为十进制,即”1”会变成1,”123”变成123, 而”011”会变为11 (注意这里不会被当成八进制来处理)

如果字符串中包含有效的十六进制格式,如”1.1”, 则将其转换为对应的浮点数值

如果字符串中包含有效的十六进制格式,例如"0xf", 则会将其转换为相同大小的十进制整数。

如果字符串是空的,则将其转换为0

如果字符串包含上述格式之外的字符,则将其转换为NaN

console.log(Number("1"));//
console.log(Number("012"));//
console.log(Number("0o10"));//
console.log(Number("0b111"));//
console.log(Number("3.14"));//3.14
console.log(Number("0xf"));//
console.log(Number(""));//
console.log(Number("123Hello"));//NaN

2.parselnt():也是将一个非数值转为数值

相比number0函数, parselnt0会更多的看是否有数字,有就会将其转换为数值。

最简单的例子为number(函数转换”123Hello"时会转换为NaN,而parselnt0则会将其转换为123。碰到空字符串时,number(函数会将其转换为0,而parselnt0则会将其转换为NaN。最后是在碰到小数时,会有一个取整的过程。例如”3.14”会 被转换为”3”

console.log(parseInt("1"));//
console.log(parseInt("012"));//
console.log(Number("0o10"));//
console.log(Number("0b111"));//
console.log(parseInt("3.14"));//
console.log(parseInt("0xf"));//
console.log(parseInt(""));//NaN
console.log(parseInt("123Hello"));//

3.parseFloat():将非数值转为浮点数

parseFloat0只解析十进制值,所以没有第二个参数,该函数会将带有小数点的字符串转换为小数。如果没有小数点的数会被转换为整数。同样的parseFloat()也是尽 可能转换更多的数值,

console.log(parseFloat("21"));//
console.log(parseFloat("123Hello"));//
console.log(parseFloat("0xA"));//
console.log(parseFloat("3.14"));//3.14
console.log(parseFloat("22.34.5"));//22.34 console.log(parseFloat("0908.34"));//908.34 console.log(parseFloat("3.1415e2"));//314.15

4.数据类型*1或者/1

JS-数值转换的更多相关文章

  1. js数值转换

    先来几个题吧: var num1 = Number("123blue");var num2 = Number("");var num3 = Number([]) ...

  2. JS 数值转换、加减乘除

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  3. 小tips:JS数值之间的转换,JS中最大的Number是多少?,JS == 与 === 的区别

    JS数值之间的转换 Number(), parseInt(),parseFloat() Number()函数的转换规则如下: 1.如果boolean值,true和false将分别被转换为1和02.如果 ...

  4. Javascript数值转换(string,int,json)

    数值: 在JavaScript中,数值转换一般有三种方式: 一.Number(param)函数:param可以用于任何数据类型 1.1 param是Boolean值,true和false分别转换为1和 ...

  5. javascript的数值转换

    在javascript中数值转换,最要的一点是函数第一个字母必须要大写.js中的函数有string字符型.number数值型.null空型.boolean布尔型.undefined未定义. 具体的转换 ...

  6. 【前端】深入浅出Javascript中的数值转换

    由于Javascript是一门弱类型的语言,在我们的代码中无时无刻不在发生着类型转换,所以了解Javascript中的类型转换对于了解我们认识Javascript的运行原理至关重要. 本文主要从数值转 ...

  7. Js强制转换

    Js强制转换 ParseInt(a,b):整型 只能放字符串,b为基数.声明前面的数是几进制.因为只能放字符串,所以无论放什么都转换为字符串: 如果String以0x开头则为16进制的整数: ‘036 ...

  8. Js 日期转换函数(UTC时间转换及日期想加减)

    IOS上Js日期转换中new Date("yyyy-mm-dd")不能正常工作,必须使用new Date("yyyy/MM/dd"); 日期相加减: Date. ...

  9. JavaScript数值转换总结

    在JavaScript中,数值转换一般有三种方式: 一.Number(param)函数:param可以用于任何数据类型 1.1  param是Boolean值,true和false分别转换为1和0: ...

  10. JavaScript进阶(四)js字符串转换成数字的三种方法

    js字符串转换成数字的三种方法 在js读取文本框或者其它表单数据的时候获得的值是字符串类型的,例如两个文本框a和b,如果获得a的value值为11,b的value值为9 ,那么a.value要小于b. ...

随机推荐

  1. Oracle登录认证

    oracle 登录认证 Table of Contents 1. 简介 2. authentication_services 2.1. 不同登录方式的写法 3. sysdba角色登录认证 3.1. 无 ...

  2. mongodb操作二

    { "_id" : ObjectId("5d4d74e1685764420c4f9337"), "createTime" : ISODate ...

  3. Nginx教程[归档]

    前言 其一,Nginx不是随随便便一篇博文就能讲清楚的,严谨地说,笔者连入门者都算不上:其二,此文系前段日子里,学习Nginx时的笔记归档类博文,还有诸多不完整处,仅供参考. 写这篇博文的时间点:20 ...

  4. Navicat Premium12 注册机下载及教程

    1.下载Navicat Premium 官网https://www.navicat.com.cn/下载最新版本下载安装(文末,网盘地址有64位安装包和注册机下载) 2.激活Navicat Premiu ...

  5. python下对目录&文件的操作

    Windows桌面上: 总文件夹 子文件夹01 文档01.txt-------------------------------------------------------------------- ...

  6. 关于keildownload键变为灰色不能使用的问题

    有时候  有些朋友可能会遇到这样的问题 突然间download键变成灰色,导致不能将程序下载到芯片中 遇到中问题如果不是软件卡了  那就是可能一不小心点错了,关掉了下载条件“约定” 可以点“魔术棒” ...

  7. Plsql配置后,sql语句可以简写 快速使用

    in=INSERT up=UPDATE se=SELECT fr=FROM wh=WHERE or=ORDER BY de=DELETE df=DELETE FROM sf=SELECT * FROM ...

  8. FTP文件上传下载

    使用Apache Commons Net来实现FTP服务器文件的上传 与 下载 maven配置Jar <!-- https://mvnrepository.com/artifact/common ...

  9. css动画(transition/transform/animation)

    在开发中,一个好的用户操作界面,总会夹杂着一些动画.css用对少的代码,来给用户最佳的体验感,下面我总结了一些css动画属性的使用方法及用例代码供大家参考,在不对的地方,希望大佬直接拍砖评论. 1 t ...

  10. [SDOI2011]消耗战 题解

    题面 虚树的模板题: 虚树的思想是只保留有用的点(在这道题目里面显然是标记点和lca),然后重新构建一棵树,从而使节点大大减少,优化复杂度 我们维护一条链(以1号点为根),这条链左边的所有在虚树上的位 ...