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 相关文章推荐
js的window.showModalDialog及window.open用法实例分析
Jan 29 Javascript
vue router仿天猫底部导航栏功能
Oct 18 Javascript
在vue中使用v-bind:class的选项卡方法
Sep 27 Javascript
JavaScript this绑定过程深入详解
Dec 07 Javascript
在vue项目中引入highcharts图表的方法
Jan 21 Javascript
Vue组件间通信方法总结(父子组件、兄弟组件及祖先后代组件间)
Apr 17 Javascript
JavaScript深入V8引擎以及编写优化代码的5个技巧
Jun 24 Javascript
解决vuex刷新状态初始化的方法实现
Aug 15 Javascript
layerui代码控制tab选项卡,添加,关闭的实例
Sep 04 Javascript
vue实现淘宝购物车功能
Apr 20 Javascript
微信小程序开发(一):服务器获取数据列表渲染操作示例
Jun 01 Javascript
基于js实现判断浏览器类型代码实例
Jul 17 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
Joomla下利用configuration.php存储简单数据
2010/05/19 PHP
PHP中echo,print_r与var_dump区别分析
2014/09/29 PHP
PHP大文件切割上传功能实例分析
2019/07/01 PHP
Laravel框架实现多个视图共享相同数据的方法详解
2019/07/09 PHP
6个常见的 PHP 安全性攻击实例和阻止方法
2020/12/16 PHP
AlertBox 弹出层信息提示框效果实现步骤
2010/10/11 Javascript
如何解决Jquery库及其他库之间的$命名冲突
2013/09/15 Javascript
js实现的点击div区域外隐藏div区域
2014/06/30 Javascript
jquery+json实现数据二级联动的方法
2015/11/28 Javascript
vue.js事件处理器是什么
2017/03/20 Javascript
javascript 中null和undefined区分和比较
2017/04/19 Javascript
JS实现为动态添加的元素增加事件功能示例【基于事件委托】
2018/03/21 Javascript
Node.js引入UIBootstrap的方法示例
2018/05/11 Javascript
详解vue路由篇(动态路由、路由嵌套)
2019/01/27 Javascript
Vue 中可以定义组件模版的几种方式
2019/08/06 Javascript
js键盘事件实现人物的行走
2020/01/17 Javascript
JavaScript函数Call、Apply原理实例解析
2020/02/17 Javascript
vue从后台渲染文章列表以及根据id跳转文章详情详解
2020/12/14 Vue.js
使用django-suit为django 1.7 admin后台添加模板
2014/11/18 Python
在Python的web框架中中编写日志列表的教程
2015/04/30 Python
解决python3 json数据包含中文的读写问题
2018/05/10 Python
详解python百行有效代码实现汉诺塔小游戏(简约版)
2020/10/30 Python
教你一分钟在win10终端成功安装Pytorch的方法步骤
2021/01/28 Python
详解CSS3实现响应式手风琴效果
2020/06/10 HTML / CSS
Hertz荷兰:荷兰和全球租车
2018/01/07 全球购物
荷兰浴室和卫浴网上商店:Badkamerxxl.nl
2020/10/06 全球购物
一套Java笔试题
2016/08/20 面试题
应届生会计电算化求职信
2013/10/03 职场文书
体育教育毕业生自荐信
2013/11/21 职场文书
园林施工员岗位职责
2013/12/11 职场文书
企业宣传标语
2014/06/09 职场文书
2014年纳税评估工作总结
2014/12/23 职场文书
工作失职检讨书
2015/01/26 职场文书
老兵退伍感言
2015/08/03 职场文书
大学生社区义工服务心得体会
2016/01/22 职场文书
JavaScript函数柯里化
2021/11/07 Javascript