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新的绑定事件机制on方法的使用方法
Apr 15 Javascript
使用jquery解析XML示例代码
Sep 05 Javascript
jQuery源码分析之jQuery.fn.each与jQuery.each用法
Jan 23 Javascript
IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题
Aug 21 Javascript
javascript for-in有序遍历json数据并探讨各个浏览器差异
Nov 30 Javascript
全面解析Angular中$Apply()及$Digest()的区别
Aug 04 Javascript
bootstrap datepicker 与bootstrapValidator同时使用时选择日期后无法正常触发校验的解决思路
Sep 28 Javascript
原生JS+HTML5实现的可调节写字板功能示例
Aug 30 Javascript
vue 项目中使用Loading组件的示例代码
Aug 31 Javascript
详解Vue组件之作用域插槽
Nov 22 Javascript
toString.call()通用的判断数据类型方法示例
Aug 28 Javascript
js删除指定位置超链接中含有百度与360的标题
Jan 06 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 __autoload函数(自动载入类文件)的使用方法
2012/02/04 PHP
php通过字符串调用函数示例
2014/03/02 PHP
CodeIgniter框架常见用法工作总结
2017/03/16 PHP
php实现微信分享朋友链接功能
2019/02/18 PHP
Discuz! 6.1_jQuery兼容问题
2008/09/23 Javascript
js中的replace方法使用介绍
2013/10/28 Javascript
使用js简单实现了tree树菜单
2013/11/20 Javascript
javascript利用apply和arguments复用方法
2013/11/25 Javascript
js 判断浏览器使用的语言示例代码
2014/03/22 Javascript
jQuery实现图像旋转动画效果
2016/05/29 Javascript
jQuery将表单序列化成一个Object对象的实例
2016/11/29 Javascript
基于JavaScript实现滑动门效果
2017/03/16 Javascript
神级程序员JavaScript300行代码搞定汉字转拼音
2017/05/20 Javascript
微信小程序录音与播放录音功能
2017/12/25 Javascript
前端防止用户重复提交js实现代码示例
2018/09/07 Javascript
vue3.0 CLI - 2.2 - 组件 home.vue 的初步改造
2018/09/14 Javascript
微信小程序dom操作的替代思路实例分析
2018/12/06 Javascript
详解vue2.0模拟后台json数据
2019/05/16 Javascript
vue.js中ref和$refs的使用及示例讲解
2019/08/14 Javascript
Vue 实现点击空白处隐藏某节点的三种方式(指令、普通、遮罩)
2019/10/23 Javascript
JavaScript面向对象核心知识与概念归纳整理
2020/05/09 Javascript
linux下python抓屏实现方法
2015/05/22 Python
Python3爬虫全国地址信息
2019/01/05 Python
在python中利用opencv简单做图片比对的方法
2019/01/24 Python
Python实现的文轩网爬虫完整示例
2019/05/16 Python
Python assert关键字原理及实例解析
2019/12/13 Python
详解Python3 定义一个跨越多行的字符串的多种方法
2020/09/06 Python
python 利用toapi库自动生成api
2020/10/19 Python
Django Admin后台模型列表页面如何添加自定义操作按钮
2020/11/11 Python
python中random模块详解
2021/03/01 Python
四风问题党员个人整改措施
2014/10/27 职场文书
拖欠货款起诉状
2015/05/20 职场文书
毛主席纪念堂观后感
2015/06/17 职场文书
2016优秀员工先进事迹材料
2016/02/25 职场文书
个人自我鉴定怎么写?
2019/07/01 职场文书
《卧薪尝胆》读后感3篇
2019/12/26 职场文书