基于javascript 显式转换与隐式转换(详解)


Posted in Javascript onDecember 15, 2017

显示转换

1.题目:请输入今年的年龄,求5年后多大?

//a.prompt接收到的数据是string类型的。
var age = prompt("请输入你今年的年龄");
alert(typeof age);
var age5 = age + 5; // 这里只会拼接成了15,而不是加5
alert("我今年"+age+"岁了,5年后我"+age5+"岁了");

2.字符串要转换成number类型。

针对上述问题,需要将age转换为数字型

2.1 可以使用Number(需要转化的内容);

var str = true;
  var num = Number(str);
  console.log(num); //1 
  console.log(typeof num); //number
  // 注意:
  // 1.如果这个转换的字符串本身就是一个数字,那么可以转换成功; 如果这个字符串本身不是一个数字,那么转成NaN.
  // 2.如果这个字符串本身是一个数字,前后有空格,也是会转换成功的; 如果中间有空格,就转成NaN.
  // 3.如果是一个"",或者是" ",或者是flase,那么会转换成0.true转成1,undefined转成NaN
  // 4.如果字符串的本身是一个小数,也是可以转换成功的。

2.2 可以使用parseInt(需要转化的内容);

var str = "123";
var num = parseInt(str);
console.log(num); //123
console.log(typeof num); //number
//  注意:
//  1.从左往右查找,直到遇到第一个非数字为止,前面的所有的内容转换成数字。
//  2.如果找完了,都没有找到一个数字,那么就转换成NaN.
//  3."" 和 "  " 转化成NaN
//  4.如果字符串里面是小数,那么转换后只能得到他的整数部分。

2.3 可以使用parseFloat(需要转化的内容);

var str = "123.24ll";
var num = parseFloat(str);
console.log(num); //123.24
console.log(typeof num); //number
// 注意:如果字符串里面是小数,那么转换后还是小数。。
//******注意: true会转成1,false会转换0.
// 如果字符串转数字,一般的使用parseInt或者parseFolat。
// 如果是其他类型,比如布尔类型,使用Number();

3. 其他类型数据 转换成字符串类型。

3.1 可以使用 String(需要转化的内容);

var num = 123;
var str = String(num);
console.log(str); //"123"
console.log(typeof str); //string
//注意: "123"  "true" "false" "undefined"  "null" "NaN"

3.2 可以使用 需要转化的内容.toString();

var num = 123;
var str = num.toString();
console.log(str); //"123"
console.log(typeof str); //string
//注意: "123"  "true" "false "NaN"
//undefined 和null 不能使用toString。

4.其他的数据类型 转换成 boolean类型。

4.1 可以使用Boolean(需要转化的内容);

var num = "";
var res = Boolean(num);
console.log(res); //false
console.log(typeof res); //boolean
//注意:
//那些可以转换成布尔类型的false: 0 -0  false "" undefined null NaN
//" "会转换成true

隐式转换

1.其他的类型转换成number类型。

1.1 可以在需要转换的内容前面加上正号。 +

var str = "123";
var res = +str;
console.log(res); //123
console.log(typeof res); //number

1.2 可以让需要转换的内容做算术运算不能后面用 +

var str = "123";
var res = str * 1;
console.log(res); //123
console.log(typeof res); //number
//注意: 一定要和连接符做一个区分。

2.其他的类型转换成string类型 。 使用连接符 +“”

var num = 123;
var str = num + "";
console.log(str); //"123"
console.log(typeof str);//string

3.其他的类型转换成boolean类型 。 使用取反运算符

var num = undefined;
var res = !!num;
console.log(res); //false
console.log(typeof res);boolean
// 注意:那些能转成布尔类型的false:0 -0 false undefiend null NaN ""

1.题目:请输入今年的年龄,求5年后多大?

//a.prompt接收到的数据是string类型的。
var age = +prompt("请输入你今年的年龄");
var age5 = age + 5;
alert("我今年"+age+"岁了,5年后我"+age5+"岁了");

以上这篇基于javascript 显式转换与隐式转换(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery ui dialog里调用datepicker的问题
Aug 06 Javascript
jquery 表单取值常用代码
Dec 22 Javascript
JavaScript Perfection kill 测试及答案
Mar 23 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
May 23 Javascript
jQuery获取Select选择的Text和Value(详细汇总)
Jan 25 Javascript
js数组的操作指南
Dec 28 Javascript
基于jQuery实现仿微博发布框字数提示
Jul 27 Javascript
利用vue.js插入dom节点的方法
Mar 15 Javascript
JavaScript实现简单的树形菜单效果
Jun 23 Javascript
JS实现json对象数组按对象属性排序操作示例
May 18 Javascript
JavaScript 2018 中即将迎来的新功能
Sep 21 Javascript
解决百度Echarts图表坐标轴越界的方法
Oct 17 Javascript
ReactNative中使用Redux架构总结
Dec 15 #Javascript
Angular中使用MathJax遇到的一些问题
Dec 15 #Javascript
vue实现验证码输入框组件
Dec 14 #Javascript
基于滚动条位置判断的简单实例
Dec 14 #Javascript
微信小程序实现动态设置placeholder提示文字及按钮选中/取消状态的方法
Dec 14 #Javascript
ES6/JavaScript使用技巧分享
Dec 14 #Javascript
Django与Vue语法的冲突问题完美解决方法
Dec 14 #Javascript
You might like
php md5下16位和32位的实现代码
2008/04/09 PHP
php max_execution_time执行时间问题
2011/07/17 PHP
PHP实现二叉树的深度优先与广度优先遍历方法
2015/09/28 PHP
php使用PDO事务配合表格读取大量数据插入操作实现方法
2017/02/16 PHP
PHP连接及操作PostgreSQL数据库的方法详解
2019/01/30 PHP
cnblogs TagCloud基于jquery的实现代码
2010/06/11 Javascript
JavaScript文档碎片操作实例分析
2015/12/12 Javascript
理解JavaScript中Promise的使用
2016/01/18 Javascript
javaScript知识点总结(必看篇)
2016/06/10 Javascript
jQuery实现底部浮动窗口效果
2016/09/07 Javascript
微信小程序加载更多 点击查看更多
2016/11/29 Javascript
AngularJS ng-repeat指令中使用track by子语句解决重复数据遍历错误问题
2017/01/21 Javascript
从零学习node.js之express入门(六)
2017/02/25 Javascript
解析vue中的$mount
2017/12/21 Javascript
jQuery实现鼠标拖动图片功能
2021/03/04 jQuery
python 图片验证码代码
2008/12/07 Python
python黑魔法之参数传递
2016/02/12 Python
Python实现以时间换空间的缓存替换算法
2016/02/19 Python
Python中查看文件名和文件路径
2017/03/31 Python
对命令行模式与python交互模式介绍
2018/05/12 Python
Python+OpenCV图片局部区域像素值处理改进版详解
2019/01/23 Python
python opencv将图片转为灰度图的方法示例
2019/07/31 Python
快速了解Python开发环境Spyder
2020/06/29 Python
python 使用openpyxl读取excel数据
2021/02/18 Python
用CSS3将你的设计带入下个高度
2009/08/08 HTML / CSS
多重CSS背景动画实现方法示例
2014/04/04 HTML / CSS
Clarks鞋法国官方网站:英国其乐鞋品牌
2018/02/11 全球购物
小学生自我评价范文
2014/01/25 职场文书
医药营销个人求职信
2014/04/12 职场文书
公安交警中队队长个人对照检查材料思想汇报
2014/10/05 职场文书
管理人员岗位职责
2015/02/14 职场文书
工地食品安全责任书
2015/05/09 职场文书
2016年教师寒假学习心得体会
2015/10/09 职场文书
2016年端午节寄语
2015/12/04 职场文书
应届生们该怎么书写求职信?
2019/07/05 职场文书
vue选项卡切换的实现案例
2022/04/11 Vue.js