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 相关文章推荐
prototype 中文参数乱码解决方案
Nov 09 Javascript
在Windows上安装Node.js模块的方法
Sep 25 Javascript
使用jQuery时Form表单元素ID和name命名大忌
Mar 06 Javascript
jquery实现拖拽调整Div大小
Jan 30 Javascript
jquery append 动态添加的元素事件on 不起作用的解决方案
Jul 30 Javascript
javascript数组对象常用api函数小结(连接,插入,删除,反转,排序等)
Sep 20 Javascript
js弹出窗口简单实现代码
Mar 22 Javascript
jQuery Jsonp跨域模拟搜索引擎
Jun 17 jQuery
关于使用js算总价的问题
Jun 23 Javascript
使用vue-resource进行数据交互的实例
Sep 02 Javascript
node.js使用免费的阿里云ip查询获取ip所在地【推荐】
Sep 03 Javascript
JavaScript变量作用域及内存问题实例分析
Jun 10 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 数组教程 定义数组
2009/10/23 PHP
destoon实现调用当前栏目分类及子分类和三级分类的方法
2014/08/21 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
2014/12/15 PHP
谷歌浏览器 insertCell与appendChild的区别
2009/02/12 Javascript
jquery如何改变html标签的样式(两种实现方法)
2013/01/16 Javascript
解析瀑布流布局:JS+绝对定位的实现
2013/05/08 Javascript
jQuery simplePage+AJAX plus分页插件用法实例
2016/02/17 Javascript
JS实现的在线调色板实例(附demo源码下载)
2016/03/01 Javascript
javascript实现移动端上的触屏拖拽功能
2016/03/04 Javascript
JQuery 的跨域方法推荐_可跨任何网站
2016/05/18 Javascript
总结javascript中的六种迭代器
2016/08/16 Javascript
vue.js的提示组件
2017/03/02 Javascript
windows下vue-cli导入bootstrap样式
2017/04/25 Javascript
Js实现京东无延迟菜单效果实例(demo)
2017/06/02 Javascript
JS自动生成动态HTML验证码页面
2017/06/14 Javascript
基于AngularJS实现表单验证功能
2017/07/28 Javascript
Vue修改mint-ui默认样式的方法
2018/02/03 Javascript
Vue2.0 实现歌手列表滚动及右侧快速入口功能
2018/08/08 Javascript
vue实现分页栏效果
2019/06/28 Javascript
从CentOS安装完成到生成词云python的实例
2017/12/01 Python
Python机器学习之scikit-learn库中KNN算法的封装与使用方法
2018/12/14 Python
python 提取key 为中文的json 串方法
2018/12/31 Python
python整小时 整天时间戳获取算法示例
2019/02/20 Python
详解Python循环作用域与闭包
2019/03/21 Python
Python django框架输入汉字,数字,字符生成二维码实现详解
2019/09/24 Python
详解python中docx库的安装过程
2019/11/08 Python
Anaconda+Pycharm环境下的PyTorch配置方法
2020/03/13 Python
Python3爬虫中Splash的知识总结
2020/07/10 Python
PyQt5-QDateEdit的简单使用操作
2020/07/12 Python
机电一体化专业推荐信
2013/12/03 职场文书
党员个人自我剖析材料
2014/10/08 职场文书
教师年度个人总结
2015/02/11 职场文书
2015小学教师德育工作总结
2015/05/12 职场文书
酒店工程部的岗位职责汇总大全
2019/10/23 职场文书
Python 数据可视化之Matplotlib详解
2021/11/02 Python
使用Docker容器部署rocketmq单机的全过程
2022/04/03 Servers