基于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 相关文章推荐
Web开发之JavaScript
Mar 29 Javascript
js通过八个点 拖动改变div大小的实现方法
Mar 05 Javascript
JavaScript用Number方法实现string转int
May 13 Javascript
jquery实现上传文件大小类型的验证例子(推荐)
Jun 25 Javascript
半个小时学json(json传递示例)
Dec 25 Javascript
原生JS实现圣旨卷轴展开效果
Mar 06 Javascript
利用jQuery异步上传文件的插件用法详解
Jul 19 jQuery
微信小程序实现顶部选项卡(swiper)
Jun 19 Javascript
react-router browserHistory刷新页面404问题解决方法
Dec 29 Javascript
JS正则表达式常见用法实例详解
Jun 19 Javascript
JS实现判断有效的数独算法示例
Feb 25 Javascript
使用next.js开发网址缩短服务的方法
Jun 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时间戳使用实例代码
2008/06/07 PHP
ThinkPHP表单自动验证实例
2014/10/13 PHP
php实现转换ubb代码的方法
2015/06/18 PHP
PHP使用Pthread实现的多线程操作实例
2015/11/14 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
DWR实现模拟Google搜索效果实现原理及代码
2013/01/30 Javascript
基于jQuery中对数组进行操作的方法
2013/04/16 Javascript
jquery模拟SELECT下拉框取值效果
2013/10/23 Javascript
自写的jQuery异步加载数据添加事件
2014/05/15 Javascript
JQuery记住用户名密码实现下次自动登录功能
2015/04/27 Javascript
jQuery实现购物车表单自动结算效果实例
2015/08/10 Javascript
Vue列表渲染的示例代码
2018/11/01 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)
2019/01/24 Javascript
JS实现横向轮播图(中级版)
2020/01/18 Javascript
javascript用defineProperty实现简单的双向绑定方法
2020/04/03 Javascript
详解Vue的组件中data选项为什么必须是函数
2020/08/17 Javascript
OpenLayers3加载常用控件使用方法详解
2020/09/25 Javascript
如何编写一个 Webpack Loader的实现
2020/10/18 Javascript
python之wxPython应用实例
2014/09/28 Python
Python自定义进程池实例分析【生产者、消费者模型问题】
2016/09/19 Python
python字典DICT类型合并详解
2017/08/17 Python
Python创建字典的八种方式
2019/02/27 Python
python使用 zip 同时迭代多个序列示例
2019/07/06 Python
django2笔记之路由path语法的实现
2019/07/17 Python
css3实现冲击波效果的示例代码
2018/01/11 HTML / CSS
AmazeUI框架搭建的方法步骤(图文)
2020/08/17 HTML / CSS
美国受欢迎的眼影品牌:BH Cosmetics
2016/10/25 全球购物
小班重阳节活动方案
2014/02/08 职场文书
厂办主管岗位职责范本
2014/02/28 职场文书
给老师的一封建议书
2014/03/13 职场文书
党校个人自我鉴定范文
2014/03/28 职场文书
北京奥运会主题口号
2014/06/13 职场文书
离职员工给领导和同事的感谢信
2015/11/03 职场文书
2016年母亲节广告语
2016/01/28 职场文书
优秀乡村医生事迹材料(2016精选版)
2016/02/29 职场文书
Netty分布式客户端处理接入事件handle源码解析
2022/03/25 Java/Android