javascript显式类型转换实例分析


Posted in Javascript onApril 25, 2015

本文实例讲述了javascript显式类型转换的方法。分享给大家供大家参考。具体分析如下:

尽管js可以做许多自动类型转换,但某些时候仍然需要做显示类型转换或为了代码逻辑清晰易读而做显示类型转换。

做显示类型转换最简单的方法就是用Boolean()、Number()、String()或Object()函数:

Number("3") //3
String(false)  //"false"
false.toString()//同上
Boolean([]) //true
Object(3)  //new Number(3)

js中的某些运算符会做隐式类型转换,比如:
若+运算符一个操作数是字符串,则它会将另一个操作数转换为字符串;
一元+运算符将其操作数转换为数字;
一元!运算符将操作数转换为布尔值并取反;
代码中经常可以看到如下类型转换的用法:

x+"" //等价于String(x)
+x //等价于Number(x)
x-0 //同上
!!x //等价于Boolean(x),是双叹号哦

Number类定义的toString()方法可以按转换基数(radix)将数字转换为其它进制数的字符串表示(2-36之间):

var n =11;
bin_str = n.toString(2);
oct_str = "0" + n.toString(8);
hex_str = "0x" + n.toString(16);

Number类还为数字到字符串的类型转换场景定义了另外3个方法:
toFixed()根据小数点后的指定位数将数字转换为字符串,它从不使用指数记数法。

11.113344.toFixed(5) //"11.11334"

toExponential()使用指数记数法将数字转换为指数形式的字符串,其中小数点前只有一位,小数点后位数由参数指定:

11.113359.toExponential(5) //"1.11134e+1"

toPrecision()根据指定的有效数字位数将数字转换为字符串,如果有效数字位数小于数字整数部分的位数则转换为指数形式。
以上3个方法都会适当的进行四舍五入或填充0.

需要说明的是前面提到的Number()函数只能基于十进制数进行转换,而且不能出现非法字符。我们可以使用全局函数(不属于任何类的方法)parseInt或parseFloat函数来进行字符串到数字的转换;

parseInt()只解析整数,而parseFloat()可以解析整数和浮点数。

如果字符串前缀为”0x”或者”0X”,parseInt()将其解释为16进制数;parseInt和parseFloat都会跳过任意数量的前导空格,且尽可能解析更多的数值字符;如果第一个非空格字符是非法数字,则返回NaN。

parseInt可以接收第二个可选参数,该参数指定数字转换的基数,取值范围是2-36.

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
通过event对象的fromElement属性解决热区设置主实体的一个bug
Dec 22 Javascript
颜色选择器 Color Picker,IE,Firefox,Opera,Safar
Nov 25 Javascript
JQuery中serialize()、serializeArray()和param()方法示例介绍
Jul 31 Javascript
javascript实现淡蓝色的鼠标拖动选择框实例
May 09 Javascript
js中scrollTop()方法和scroll()方法用法示例
Oct 03 Javascript
javascript容错处理代码(屏蔽js错误)
Jan 20 Javascript
IntersectionObserver实现图片懒加载的示例
Sep 29 Javascript
React中上传图片到七牛的示例代码
Oct 10 Javascript
详解小程序云开发数据库
May 20 Javascript
原生js实现随机点餐效果
Dec 10 Javascript
vue学习笔记之给组件绑定原生事件操作示例
Feb 27 Javascript
JavaScript中条件语句的优化技巧总结
Dec 04 Javascript
javascript原始值和对象引用实例分析
Apr 25 #Javascript
JavaScript分页功能的实现方法
Apr 25 #Javascript
JavaScript实现图片DIV竖向滑动的方法
Apr 25 #Javascript
JavaScript实现梯形乘法表的方法
Apr 25 #Javascript
js插件设置innerHTML时在IE8下提示“未知运行时错误”解决方法
Apr 25 #Javascript
JavaScript获取DOM元素的11种方法总结
Apr 25 #Javascript
在线所见即所得HTML编辑器的实现原理浅析
Apr 25 #Javascript
You might like
用PHP编写和读取XML的几种方式
2013/01/12 PHP
php实现比较全的数据库操作类
2015/06/18 PHP
php实现图片上传时添加文字和图片水印技巧
2020/04/18 PHP
laravel-admin 管理平台获取当前登陆用户信息的例子
2019/10/08 PHP
javascript一些不错的函数脚本代码
2008/09/10 Javascript
JQuery datepicker 使用方法
2011/05/20 Javascript
利用javascript解决图片缩放及其优化的代码
2012/05/23 Javascript
Textbox控件注册回车事件及触发按钮提交事件具体实现
2013/03/04 Javascript
javascript生成随机大小写字母的方法
2014/02/20 Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
2014/03/18 Javascript
给html超链接设置事件不使用href来完成跳
2014/04/20 Javascript
js 调用百度地图api并在地图上进行打点添加标注
2014/05/13 Javascript
js删除局部变量的实现方法
2016/06/25 Javascript
AngularJs html compiler详解及示例代码
2016/09/01 Javascript
jquery 追加元素append、prepend、before、after用法与区别分析
2016/12/02 Javascript
vue router仿天猫底部导航栏功能
2017/10/18 Javascript
JQuery实现table中tr上移下移的示例(超简单)
2018/01/08 jQuery
JavaScript实现公告栏上下滚动效果
2020/03/13 Javascript
利用python画一颗心的方法示例
2017/01/31 Python
python smtplib发送带附件邮件小程序
2018/05/22 Python
使用Python AIML搭建聊天机器人的方法示例
2018/07/09 Python
python字典值排序并取出前n个key值的方法
2018/10/17 Python
redis数据库及与python交互用法简单示例
2019/11/01 Python
TensorFlow获取加载模型中的全部张量名称代码
2020/02/11 Python
HTML5 Canvas 起步(2) - 路径
2009/05/12 HTML / CSS
Android面试题及答案
2015/09/04 面试题
五星级酒店餐饮部总监的标准岗位职责
2014/02/17 职场文书
个人廉洁自律承诺书
2014/03/27 职场文书
个人委托书范本
2014/04/02 职场文书
仓管员岗位职责
2015/02/03 职场文书
建筑技术负责人岗位职责
2015/04/13 职场文书
广告公司文案策划岗位职责
2015/04/14 职场文书
观后感的写法
2015/06/19 职场文书
校长新学期寄语2016
2015/12/04 职场文书
python 实现mysql自动增删分区的方法
2021/04/01 Python
python 安全地删除列表元素的方法
2022/03/16 Python