当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript parseInt与Number函数的区别

Javascript
在js中使用"with"语句中跨frame的变量引用问题
原型方法的不同写法居然会影响调试的解决方法
在JavaScript中遭遇级联表达式陷阱
JScript内置对象Array中元素的删除方法
获取JavaScript用户自定义类的类名称的代码
使用TextRange获取输入框中光标的位置的代码
使用onbeforeunload属性后的副作用
IE7提供XMLHttpRequest对象为兼容
encode脚本和normal脚本混用的问题与解决方法
用js判断用户浏览器是否是XP SP2的IE6
关于使用runtimeStyle属性问题讨论文章
javascript学习随笔(使用window和frame)的技巧
javascript学习随笔(编写浏览器脚本 Navigator Scripting )
跑马灯效果大全
让超链接显示提示信息的js代码
打开超链需要“确认”对话框的方法
javascript的对话框详解与参数
让网页上的超链接失效,不能点击的js代码
鼠标经过时链接文字的特别震撼的显示效果
显示页面的所有链接的js代码

Javascript 中的 javascript parseInt与Number函数的区别


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-02-27   浏览: 240 ::
收藏到网摘: n/a

在js中,如果你使用parseInt("08"),一般都会认为会返回8,然而实际上返回了0.但是用Number("08")返回的才是8. 但是parseInt("08", 10)是可以返回8的。
为搞清楚两者的区别,
参考了别人写的parseInt&Number的区别:
parseInt
Parses a string argument and returns an integer of the specified radix or base.
核心函数
实现版本 Navigator 2.0: If the first character of the string specified in parseInt(string) cannot be converted to a number, returns "NaN" on Solaris and Irix and 0 on all other platforms.Navigator 3.0, LiveWire 2.0: Returns "NaN" on all platforms if the first character of the string specified in parseInt(string) cannot be converted to a number.

语法
parseInt(string,radix)
参数
string A string that represents the value you want to parse.
radix (Optional) An integer that represents the radix of the return value.

描述
The parseInt function is a built-in JavaScript function.
The parseInt function parses its first argument, a string, and attempts to return an integer of the specified radix (base). For example, a radix of 10 indicates to convert to a decimal number, 8 octal, 16 hexadecimal, and so on. For radixes above 10, the letters of the alphabet indicate numerals greater than 9. For example, for hexadecimal numbers (base 16), A through F are used.
If parseInt encounters a character that is not a numeral in the specified radix, it ignores it and all succeeding characters and returns the integer value parsed up to that point. parseInt truncates numbers to integer values.
If the radix is not specified or is specified as 0, JavaScript assumes the following:

If the input string begins with "0x", the radix is 16 (hexadecimal).
If the input string begins with "0", the radix is eight (octal).
If the input string begins with any other value, the radix is 10 (decimal).
If the first character cannot be converted to a number, parseInt returns "NaN".
For arithmetic purposes, the "NaN" value is not a number in any radix. You can call the isNaN function to determine if the result of parseInt is "NaN". If "NaN" is passed on to arithmetic operations, the operation results will also be "NaN".

示例
The following示例 all return 15:
parseInt("F", 16)
parseInt("17", 8)
parseInt("15", 10)
parseInt(15.99, 10)
parseInt("FXX123", 16)
parseInt("1111", 2)
parseInt("15*3", 10) The following示例 all return "NaN":
parseInt("Hello", 8)
parseInt("0x7", 10)
parseInt("FFF", 10) Even though the radix is specified differently, the following示例 all return 17 because the input string begins with "0x".
parseInt("0x11", 16)
parseInt("0x11", 0)
parseInt("0x11")
-----------------------------------------------
-----------------------------------------------
将指定对象转换为数字。
核心函数
实现版本 Navigator 4.0, Netscape Server 3.0
语法
Number(obj)
参数
obj 一个对象。

描述
如果对象是 Date 类型的对象,Number 将返回自格林威治标准时间 1970 年 1 月 1 日起已经经过的毫秒数,在此日期之后的是正数,之前的是负数。
如果 obj 是一个没有数字格式的字符串,Number 将返回 NaN。

示例
下面的例子将把 Date 对象转换为数值型值:
<SCRIPT>
d = new Date ("December 17, 1995 03:24:00");
document.write (Number(d) + "<BR>");