先来几个题吧:

var num1 = Number("123blue");
var num2 = Number("");
var num3 = Number([]);
var num4 = Number(true);
var num5 = Number(null);
var num6 = Number(undefined);
var num7 = Number("010");
答案:
num1=NaN, num2=0, num3=0, num4=1, num5=0, num6=NaN, num7=10 var num8 = parseInt("010");
var num9 = parseFloat("010");
var num10 = parseInt("123blue");
var num11 = parseInt("");
var num12 = parseInt("22.5");
var num13 = parseFloat("22.0");
var num14 = parseFloat("0xA");
答案:
num8=10(ie8下=8), num9=10, num10=123, num11=NaN, num12=22, num13=22, num14=0
都答对的亲呢就略过本文吧,其他亲们继续往下看~

js数值转换有4种方法:Number(), parseInt(), parseFloat(), 和一元操作符“+”。其中“+”和Number()的转换规则一样。
Number()可用于转换任何数据类型,转换的规则如下:

 parseInt()和parseFloat()用于转换字符串,Number()转换字符串过于复杂,parseInt()则相对简单,更适用于字符串的转换。parseInt()有以下几点规则:

  1.解析时先查找第一个非空格字符,如果不是数字或+ -,返回NaN,如果是数字,则继续第二个字符,直到解析完所有字符或遇到一个非数字字符。如

   2.会把“0x”开头且后跟数字的当作十六进制解析; “0”开头且后跟数字的,在ECMAScript 3 中当作八进制,ECMAScript5忽略前导0当作十进制解析.(所以上题中的num8在ie8-下等于8,而在其他现代浏览器中是10)

     3.接收第二个参数,指定使用多少进制。如果是指定了十六进制则字符串可以不带前面的“0x”。如parseInt("A", 16)=16,parseInt("A")=NaN.
 
 

 parseFloat()和parseInt( )类似,除了下面两点:

1.允许有一位小数点“.”,即解析有效的浮点数。

2.忽略前导0始终按十进制解析,并且十六进制格式的字符串会被转换成0.

   字符串如果包含的是整数或者小数点后是0,parseFloat( )返回整数。
												

js数值转换的更多相关文章

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

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

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

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

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

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

  4. javascript的数值转换

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

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

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

  6. Js强制转换

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

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

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

  8. JavaScript数值转换总结

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

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

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

随机推荐

  1. jq插件又来了,模拟select下拉框,支持上下方向键哦

    好久没来了,更新下插件, 这个原理就是利用的 input[type='hidden']和自定义属性data-value捆绑传值操作的,可是设置默认选项,回调等参数,代码不多,比较简单,吼吼 (func ...

  2. Visual Studio 2008快捷键

    命令行:Devenv 启动VS StudionIsqlw 启动SQL2000查询分析器Sqlwb 启动SQL2005企业管理器Inetmgr 启动IIS管理器大纲Ctrl+M,O折叠所有大纲Ctrl+ ...

  3. Oracle之PLSQL总结

    基本数据类型变量 1. 基本数据类型     Number 数字型     Int 整数型     Pls_integer 整数型,产生溢出时出现错误 Binary_integer 整数型,表示带符号 ...

  4. 关于web的流程

    1.先确定好样式,布局,风格 2.之后的页面只是加一些HTML标签而已.

  5. [置顶] lvs-tun隧道模式搭建

    一.lvs直接路由原理 由于图片还要一张一张上传,可以到下面网站下载我的word版本: http://download.csdn.net/user/y0908105023 补充基础知识: OSI(Op ...

  6. 弹出框、遮罩层demo

    仿alert.confirm的弹出框. 弹出后,用遮罩层将背景虚化. 代码如下: <html> <meta http-equiv="Content-Type" c ...

  7. C语言的本质(14)——不完全类型和复杂声明

    ISO 将 C 的类型分为三个不同的集合: 函数.对象和不完全类型三大类.函数类型很明显:对象类型包含其他一切,除非不知道对象的大小.该标准使用术语"对象类型"指定指派的对象必须具 ...

  8. CentOS bridge br0 kvm libvirt-xml

    1,kvm bridge br0配置文件内容实例: ifcfg-em1配置文件内容Example: DEVICE=em1 Bridge=br0 TYPE=Ethernet onboot=yes NM_ ...

  9. apache端口被占用

      1.80端口被占用,先去服务里将IIS关闭掉,然后重启apache,如果还是继续弹窗the requested operation has failed...需要去Internet信息服务里面停止 ...

  10. Tcl 简单介绍及特性

    [简单介绍|特性] l  简单介绍 Tcl是一门产生于80年代末的语言,和Python一样,她是用c开发出来的.假设说C/Java/C++/C#为编译型语言的话,那么Python.Perl和Tcl就是 ...