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 相关文章推荐
Javascript与vbscript数据共享
Jan 09 Javascript
javascript设计模式 接口介绍
Jul 24 Javascript
学习JavaScript设计模式之策略模式
Jan 12 Javascript
详谈javascript异步编程
Feb 21 Javascript
浅谈JavaScript 覆盖原型以及更改原型
Aug 31 Javascript
JS中动态创建元素的三种方法总结(推荐)
Oct 20 Javascript
JavaScript中的普通函数和箭头函数的区别和用法详解
Mar 21 Javascript
详解vue+vueRouter+webpack的简单实例
Jun 17 Javascript
微信小程序tabBar用法实例详解
Dec 04 Javascript
es6中比较有用的7个技巧小结
Jul 12 Javascript
使用p5.js临摹动态图形
Oct 23 Javascript
google广告之另类js调用实现代码
Aug 22 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+mysql删除指定编号员工信息的方法
2015/01/14 PHP
PHP的压缩函数实现:gzencode、gzdeflate和gzcompress的区别
2016/01/27 PHP
Javascript SHA-1:Secure Hash Algorithm
2006/12/20 Javascript
写自已的js类库需要的核心代码
2012/07/16 Javascript
使用jquery.qrcode生成彩色二维码实例
2014/08/08 Javascript
node.js中的path.dirname方法使用说明
2014/12/09 Javascript
基于javascript实现图片左右切换效果
2016/01/25 Javascript
拖动时防止选中
2017/02/03 Javascript
Vue.js 点击按钮显示/隐藏内容的实例代码
2018/02/08 Javascript
用Vue写一个分页器的示例代码
2018/04/22 Javascript
jQuery实现常见的隐藏与展示列表效果示例
2018/06/04 jQuery
Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
2018/06/10 Javascript
VUE解决微信签名及SPA微信invalid signature问题(完美处理)
2019/03/29 Javascript
不依任何赖第三方,单纯用vue实现Tree 树形控件的案例
2020/09/21 Javascript
python实现跨文件全局变量的方法
2014/07/07 Python
python统计文本文件内单词数量的方法
2015/05/30 Python
django的auth认证,authenticate和装饰器功能详解
2019/07/25 Python
python中68个内置函数的总结与介绍
2020/02/24 Python
实例教程 纯CSS3打造非常炫的加载动画效果
2014/11/05 HTML / CSS
CSS3中Animation属性的使用详解
2015/08/06 HTML / CSS
HTML5未来发展趋势
2016/02/01 HTML / CSS
澳大利亚潮流尖端的快时尚品牌:Cotton On
2016/09/26 全球购物
Zooplus罗马尼亚:宠物食品和配件
2019/11/02 全球购物
下面这个程序执行后会有什么错误或者效果
2014/11/03 面试题
SQL Server提供的3种恢复模型都是什么? 有什么区别?
2012/05/13 面试题
Java如何支持I18N?
2016/10/31 面试题
地理科学专业毕业生求职信
2013/10/15 职场文书
小学教师师德感言
2014/02/10 职场文书
农民工工资支付承诺函
2014/03/31 职场文书
考生诚信考试承诺书
2014/05/23 职场文书
树转促学习心得体会
2014/09/10 职场文书
乡镇领导班子四风对照检查材料
2014/09/27 职场文书
授权委托书协议书
2014/10/16 职场文书
强烈推荐:小学生:暑假作息时间表(值得收藏)
2019/07/09 职场文书
python基础学习之递归函数知识总结
2021/05/26 Python
图神经网络GNN算法
2022/05/11 Python