Javascript 强制类型转换函数


Posted in Javascript onMay 17, 2009

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();//这里会报错
Javascript 相关文章推荐
JQuery伸缩导航练习示例
Nov 13 Javascript
自定义的一个简单时尚js下拉选择框
Nov 20 Javascript
jquery提示效果实例分析
Nov 25 Javascript
jquery中filter方法用法实例分析
Feb 06 Javascript
js实现鼠标滚轮控制图片缩放效果的方法
Feb 20 Javascript
详细分析使用AngularJS编程中提交表单的方式
Jun 19 Javascript
Bootstrap Table使用方法详解
Aug 01 Javascript
超实用的javascript时间处理总结
Aug 16 Javascript
canvas实现图像放大镜
Feb 06 Javascript
jquery.guide.js新版上线操作向导镂空提示jQuery插件(推荐)
May 20 jQuery
ionic2中使用自动生成器的方法
Mar 04 Javascript
JS将指定的某个字符全部转换为其他字符实例代码
Oct 13 Javascript
jQuery live
May 15 #Javascript
event.keyCode键码值表 附只能输入特定的字符串代码
May 15 #Javascript
javascript Prototype 对象扩展
May 15 #Javascript
JavaScript设置FieldSet展开与收缩
May 15 #Javascript
childNodes.length与children.length的区别
May 14 #Javascript
DOM下的节点属性和操作小结
May 14 #Javascript
JQuery textlimit 显示用户输入的字符数 限制用户输入的字符数
May 14 #Javascript
You might like
PHP反射类ReflectionClass和ReflectionObject的使用方法
2013/11/13 PHP
PHP中的按位与和按位或操作示例
2014/01/27 PHP
PHP闭包实例解析
2014/09/08 PHP
PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
2016/06/13 PHP
详细对比php中类继承和接口继承
2018/10/11 PHP
表单提交验证类
2006/07/14 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
2011/09/29 Javascript
浅析js封装和作用域
2013/07/09 Javascript
简单的邮箱登陆的提示效果类似于yahoo邮箱
2014/02/26 Javascript
node.js下when.js 的异步编程实践
2014/12/03 Javascript
javascript显式类型转换实例分析
2015/04/25 Javascript
浅谈angularjs module返回对象的坑(推荐)
2016/10/21 Javascript
AngularJS实现动态编译添加到dom中的方法
2016/11/04 Javascript
Vuex2.0+Vue2.0构建备忘录应用实践
2016/11/30 Javascript
jQuery页面弹出框实现文件上传
2017/02/09 Javascript
深入理解angular2启动项目步骤
2017/07/15 Javascript
微信小程序数字滚动插件使用详解
2018/02/02 Javascript
基于ssm框架实现layui分页效果
2019/07/27 Javascript
layui table表格数据的新增,修改,删除,查询,双击获取行数据方式
2019/11/14 Javascript
vue开发中遇到的问题总结
2020/04/07 Javascript
[27:28]Ti4 冒泡赛第二天 iG vs NEWBEE 1
2014/07/15 DOTA
Python 专题四 文件基础知识
2017/03/20 Python
python dataframe astype 字段类型转换方法
2018/04/11 Python
Python实现读写INI配置文件的方法示例
2018/06/09 Python
面向初学者的Python编辑器Mu
2018/10/08 Python
python并发编程多进程之守护进程原理解析
2019/08/20 Python
Python pandas如何向excel添加数据
2020/05/22 Python
python开发一款翻译工具
2020/10/10 Python
安踏官方商城:anta.cn
2019/12/16 全球购物
澳大利亚在线消费电子产品商店:TobyDeals
2020/01/05 全球购物
岗位职责风险点
2014/03/12 职场文书
计算机应用应届生求职信
2014/07/12 职场文书
甜品店创业计划书
2014/09/21 职场文书
2019求职信大礼包
2019/05/15 职场文书
开网店计划分析
2019/07/30 职场文书
Java网络编程之UDP实现原理解析
2021/09/04 Java/Android