当前位置: 首页 > 图文教程 > 网络编程 > Javascript > Javascript 强制类型转换函数

Javascript
JavaScript 继承详解(四)
兼容IE/Firefox/Opera/Safari的检测页面装载完毕的脚本Ext.onReady的实现
js 实现无缝滚动 兼容IE和FF
js 对象是否存在判断
优化 JavaScript 代码的方法小结
表单元素事件 (Form Element Events)
js 动态创建 html元素
prototype 学习笔记整理
JavaScript 创建对象
javascript 全角转换实现代码
DOM 基本方法
用showModalDialog弹出页面后,提交表单总是弹出一个新窗口
javascript 动态创建 Option选项
javascript 7行代码画出一个围棋棋盘
比较简单的异步加载JS文件的代码
javascript 层隐藏和显示的代码
自定义滚动条3.0
javascript iframe内的函数调用实现方法
Prototype Class对象学习
Prototype RegExp对象 学习

Javascript 强制类型转换函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 101 ::
收藏到网摘: n/a

javascript是弱类型的语言,所以强制类型转换还是比较重要的,下面看一下它的几个强制转换的函数 1. Boolean(value):把值转换成Boolean类型;
2. Nnumber(value):把值转换成数字(整型或浮点数);
3. String(value):把值转换成字符串。
我们先来看Boolean():在要转换的值为“至少有一字符的字符串”、“非0的数字”或“对象”,那么Boolean()将返回true,如果要转换的值为“空字符串”、“数字0”、“undefined”,“null”这些话,那么Boolean()会返回false。你可以用以下代码来测试
复制代码 代码如下:

var t1 = Boolean("");//返回false,空字符串
var t2 = Boolean("s");//返回true,非空字符串
var t3 = Boolean(0);//返回false,数字0
var t3 = Boolean(1),t4 = Boolean(-1);//返回true,非0数字
var t5 = Boolean(null),t6 = Boolean(undefined);//返回false
var t7 = Boolean(new Object());//返回true,对象

再来看看Number():Number()与parseInt()和parseFloat()类似,它们区别在于Number()转换是整个值,而parseInt()和parseFloat()则可以只转换开头的数字部分,例如:Number("1.2.3"),Number("123abc")会返回NaN,而parseInt("1.2.3")返回1、parseInt("123abc")返回123、parseFloat("1.2.3")返回1.2、parseFloat("123abc")返回123。Number()会先判断要转换的值能否被完整的转换,然后再判断是调用parseInt()或parseFloat()。下面列了一些值调用Number()之后的结果:
Number(false) 0
Number(true) 1
Number(undefined) NaN
Number(null) 0
Number("1.2") 1.2
Number("12") 12
Number("1.2.3") NaN
Number(new Object()) NaN
Number(123) 123
最后是String():这个以比较简单了,它可以把所有类型的数据转换成字符串,如:String(false)---"false"、String(1)---"1"。它和toString()方法有些不同,区别在于:
复制代码 代码如下:

var t1 = null;
var t2 = String(t1);//t2的值 "null"
var t3 = t1.toString();//这里会报错
var t4;
var t5 = String(t4);//t5的值 "undefined"
var t6 = t4.toString();//这里会报错