基于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 相关文章推荐
JavaScript中Math对象使用说明
Jan 16 Javascript
常规表格多表头查询示例
Feb 21 Javascript
常用的Javascript数据验证插件
Aug 04 Javascript
js判断手机访问或者PC的几个例子(常用于手机跳转)
Dec 15 Javascript
js实现点击图片自动提交action的简单方法
Oct 16 Javascript
JavaScript获取当前时间向前推三个月的方法示例
Feb 04 Javascript
BootStrap与Select2使用小结
Feb 17 Javascript
基于vue.js实现的分页
Mar 13 Javascript
微信小程序自定义单项选择器样式
Jul 25 Javascript
layui实现数据分页功能(ajax异步)
Jul 27 Javascript
vue 实现通过vuex 存储值 在不同界面使用
Nov 11 Javascript
在vue中axios设置timeout超时的操作
Sep 04 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 form 表单传参明细研究
2009/07/17 PHP
PHP5 操作MySQL数据库基础代码
2009/09/29 PHP
CodeIgniter实现更改view文件夹路径的方法
2014/07/04 PHP
浅谈php正则表达式中的非贪婪模式匹配的使用
2014/11/25 PHP
PHP实现数组根据某个单元字段排序操作示例
2018/08/01 PHP
Thinkphp 框架配置操作之动态配置、扩展配置及批量配置实例分析
2020/05/15 PHP
javascript 基础篇1 什么是js 建立第一个js程序
2012/03/14 Javascript
利用jquery操作Radio方法小结
2014/10/20 Javascript
jQuery中html()方法用法实例
2014/12/25 Javascript
利用js实现禁止复制文本信息
2015/06/03 Javascript
基于Bootstrap的UI扩展 StyleBootstrap
2016/06/17 Javascript
基于bootstrap实现广告轮播带图片和文字效果
2016/07/22 Javascript
node.js 中间件express-session使用详解
2017/05/20 Javascript
解决循环中setTimeout执行顺序的问题
2018/06/20 Javascript
Python urllib、urllib2、httplib抓取网页代码实例
2015/05/09 Python
利用nohup来开启python文件的方法
2019/01/14 Python
解决pycharm 远程调试 上传 helpers 卡住的问题
2019/06/27 Python
基于python实现蓝牙通信代码实例
2019/11/19 Python
python调用函数、类和文件操作简单实例总结
2019/11/29 Python
python sklearn包——混淆矩阵、分类报告等自动生成方式
2020/02/28 Python
Python3+selenium实现cookie免密登录的示例代码
2020/03/18 Python
Python configparser模块封装及构造配置文件
2020/08/07 Python
html5 Canvas实现图片旋转的示例
2018/01/15 HTML / CSS
AmazeUi Tree(树形结构) 应用小结
2020/08/17 HTML / CSS
Interrail法国:乘火车探索欧洲,最受欢迎的欧洲铁路通票
2019/08/27 全球购物
Lancer Skincare官方网站:抗衰老皮肤护理
2020/11/20 全球购物
单位工程竣工验收方案
2014/03/16 职场文书
团队经理竞聘书
2014/03/31 职场文书
小学作文评语大全
2014/04/21 职场文书
环保口号大全
2014/06/12 职场文书
高中升旗仪式演讲稿
2014/09/09 职场文书
抗洪救灾感谢信
2015/01/22 职场文书
材料采购员岗位职责
2015/04/03 职场文书
母亲节感言
2015/08/03 职场文书
详解MySQL 用户权限管理
2021/04/20 MySQL
MySQL为数据表建立索引的原则详解
2022/03/03 MySQL