JavaScript中的parseInt和Number函数

函数作用:

parseInt将字符串(String)类型转为整数类型。

Number() 函数把对象(Object)的值转换为数字。

语法不同:

parseInt(string, [radix])

string:必选参数,要被转换的字符串

radix:可选,数字的基数。取值范围在2~36。

如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。

<pre name="code" class="javascript">        alert("parseInt1返回 " + parseInt("1", 1));   //返回NaN
        alert("parseInt0x123 " + parseInt("0x123"));  //291
        alert("parseInt000123 " + parseInt("000123"));  //123

当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。       如果 string 以 "0x" 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数。如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。如果 string 以 1 ~ 9 的数字开头,parseInt()
将把它解析为十进制的整数。

Number(object)

Number返回的是数字,其参数是对象。

如果对象的值无法转换为数字,那么 Number() 函数会返回 NaN。

        var test = new Date()
        var testStr = new String("123");
        var testStr1 = new String("5,000");
        alert("Number(test) " + Number(test));  //返回1437631091369

        alert("Number(testStr) " + Number(testStr)); //返回123

        alert("Number(testStr1) " + Number(testStr1)); //返回NaN

在 var testStr1 = new String("5,000") 中,字符串中含有千位符,因此造成无法转换。虽然是很小的细节,但也应当谨慎。含有千位符的字符串,不能直接转换,要先去掉千位符,再进行转换,也是由此引出这篇博客。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-07 08:53:06

JavaScript中的parseInt和Number函数的相关文章

JavaScript中常见的数组操作函数及用法

昨天写了个帖子,汇总了下常见的JavaScript中的字符串操作函数及用法.今天正好有时间,也去把JavaScript中常见的数组操作函数及用法总结一下,这样方便大家准备参考.如果恰好你也在准备各种笔试,希望对你有所帮助.同时,也欢迎补充. 1.数组创建 创建数组应该是最简单的了,有用数组字面量创建和数组构造函数两种方法,见下: var array1 = new Array(); var array2 = []; 上面是创建数组的最常见的两种方法,其中第二种方法因为简单直观而被开发者推崇.其中,

JavaScript中取得反正切的Atan函数

JavaScript中取得反正切的Atan函数 atan 方法:返回数字的反正切值. 使用方式如下: Math.atan(number)http://www.mlyrx120.com 注意:必选项number 参数是需要计算反正切的数值表达式.返回值为其数字参数的反正切值.

一篇文章把你带入到JavaScript中的闭包与高级函数

在JavaScript中,函数是一等公民.JavaScript是一门面向对象的编程语言,但是同时也有很多函数式编程的特性,如Lambda表达式,闭包,高阶函数等,函数式编程时一种编程范式. function dada() { var a = 1; var b = function() { console.log(a); } return b // b 就是一个闭包函数,因为它能访问dada函数的作用域 } JavaScript的函数也是对象,可以有属性,可以赋值给一个变量,可以放在数组里作为元素

javascript中可用的编码解码函数

在项目实践中可能会遇到一些特殊字符的转义问题,那么这个时候就需要js编码解码函数来解决这些情况了: 特殊字符的含义 URL编码  符号 解释 转义 # 用来标志特定的文档位置 %23 % 对特殊字符进行编码 %25 & 分隔不同的变量值对 %26 + 在变量值中表示空格 %2B / 表示目录路径 %2F \ 表示目录路径 %5C = 用来连接键和值 %3D ? 表示查询字符串的开始 %3F 空格 空格 %20 . 句号 %2E : 冒号 %3A javascript中可用的编码解码函数,有如下的

JavaScript中的ParseInt(&quot;08&quot;)和“09”返回0的原因分析及解决办法

今天在程序中出现一个bugger ,调试了好久,最后才发现,原来是这个问题. 做了一个实验: alert(parseInt("01")),当这个里面的值为01====>07时都是正常的,但是在"08","09"就会返回0 (这种现象出现在ie内核的浏览器中,如360浏览器就会出现这种错误)(谷歌,火狐不受影响). 查阅资料得知着这种现象原因: 大神的解释: 01--07自然没有问题,但是09,08都是不合格的八进制形式,所以被按照0处理了.

JavaScript中常见的字符串操作函数及用法汇总

1.字符串转换 字符串转换是最基础的要求和工作,你可以将任何类型的数据都转换为字符串,你可以用下面三种方法的任何一种: ? 1 2 var num= 19; // 19 var myStr = num.toString(); // "19" 你同样可以这么做: ? 1 2 var num= 19; // 19 var myStr = String(num); // "19" 或者,再简单点儿: ? 1 2 var num= 19; // 19 var myStr =

javascript 中break、 continue、函数不能重载

在javascript中,break与continue有着显著的差别. 如果遇到break语句,会终止最内层循环,无论后面还有多少计算. 如果遇到continue,只会终止此次循环,后面的自循环依然执行. var num = 0; for (var k = 0; k < 3; k++) { for (var i = 0; i < 3; i++) { for (var j = 0; j < 3; j++) { if (i === 1 && j === 1) { break;

JavaScript中的apply和call函数详解

第一次翻译技术文章,见笑了! 翻译原文:Function.apply and Function.call in JavaScript 第一段略. 每个JavaScript函数都会有很多附属的(attached)方法,包括toString().call()以及apply().听起来,你是否会感到奇怪,一个函数可能会有属于它自己的方法,但是记住,JavaScript中的每个函数都是一个对象.看一下这篇文章,复习一下(refresher)JavaScript特性.你可能还想知道JavaScript中函

Javascript中类型: undefined, number ,string ,object ,boolean

var a1; var a2 = true;var a3 = 1;var a4 = "Hello";var a5 = new Object();var a6 = null;var a7 = NaN;var a8 = undefined; alert(typeof a); //显示"undefined"alert(typeof a1); //显示"undefined"alert(typeof a2); //显示"boolean"