从零开始前端学习[55]:类型转换和Math方法
来源:互联网 发布:匈牙利算法矩阵 编辑:程序博客网 时间:2024/06/03 20:15
类型转换和Math方法
- 类型转换(显示类型转换,隐式类型转换)
- Math方法
提示:
博主:章飞_906285288
博客地址:http://blog.csdn.net/qq_29924041
类型转换(显示类型转换,隐式类型转换)
我们知道在js中的检测类型方式:typeof 要转换的变量或者数据类型,返回一个类型名称的字符串
而其中显式类型转换,其实就是通过js中的一些方法(函数)转换,如parseInt,parseFloat等
显示转换
显示转换有时候常用的一些转换函数:parseInt,parseFloat,toString等类型。
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <meta charset="UTF-8"><!--申明当前网页的编码集UTF-8--> <meta name="Generator" content="EditPlus®"> <!--编辑器的名称--> <meta name="Author" content="作者是谁"> <meta name="Keywords" content="关键词"> <meta name="Description" content="描述和简介"> <style type="text/css"> body,dl,dd,dt,p,h1,h2,h3,h4,h5,h6{ margin: 0;} ul,ol{margin: 0; list-style: none; padding: 0;} a{ text-decoration: none; } *{ margin: 0; padding: 0; } </style></head><body><script> var demo_int = 10; //定义一个整形数据 console.log("demo_int:"+ demo_int); console.log("demo_int type:"+ typeof demo_int); var demo_string_width = "110.05px" console.log("demo_string_width:"+demo_string_width); console.log("demo_string_width type:"+typeof demo_string_width); console.log("parseInt demo_string_width:"+ parseInt(demo_string_width)); //从字符串类型中过滤出整形 console.log("parseInt demo_string_width _2:"+ parseInt(demo_string_width,2)); //以二进制形式读取 console.log("parseInt demo_string_width _16:"+ parseInt(demo_string_width,16));//以16进制形式输出 console.log("parseInt demo_string_width:"+ parseFloat(demo_string_width)); //从字符串类型中过滤出实形 var demo_string = "aaasd110.05px" console.log("parseInt demo_string:"+ parseInt(demo_string)); //从字符串类型中过滤出整形 console.log("parseInt demo_string:"+ parseFloat(demo_string)); //从字符串类型中过滤出整形 var demo_Int2 = 100; console.log(typeof demo_Int2.toString()); //将整型数据转换为字符串型 console.log(demo_Int2.toString()+"1234"); //将整型数据转为字符串型后,在与数据相加得到一个字符串</script></body></html>
上述实测试代码:测试parseInt,parseFloat以及toString类型的使用
隐式转换
隐式类型转换,就是在没有任何显示转换的基础上,通过运算符等操作,由浏览器自动为我们进行这样的一种类型转换的过程,其实这种转换自古其实就有,不管在java或者c/C++中都是有的,比如一个整型与实型的相加,乘除等等。这个时候都是会由系统自动去进行一系列的类型转换过程。
1:+ 全为数字类型则为运算,有字符串则为拼接 从左到右计算
2:- ,* , / ,% 只要有一边是数字就将结果直接转换为数字类型
3:对于boolean类型的加减都是按照数字类型来进行的
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <meta charset="UTF-8"><!--申明当前网页的编码集UTF-8--> <meta name="Generator" content="EditPlus®"> <!--编辑器的名称--> <meta name="Author" content="作者是谁"> <meta name="Keywords" content="关键词"> <meta name="Description" content="描述和简介"> <style type="text/css"> body,dl,dd,dt,p,h1,h2,h3,h4,h5,h6{ margin: 0;} ul,ol{margin: 0; list-style: none; padding: 0;} a{ text-decoration: none; } *{ margin: 0; padding: 0; } </style></head><body><script> //如果加号左右全是数字,就是按照正常数字的形式进行加减 var allNumberSum = 1 + 2; console.log(allNumberSum); console.log(typeof allNumberSum); //如果其中都是数字类型字符串,如果从左到右数字的话,会先加,遇到字符串就直接拼接成字符串 var sideofString = 1 + 2 +"3"+"5"; console.log(sideofString); console.log(typeof sideofString); //如果其中有数字类型字符串,如果先是字符串,后面是数字的话,会直接转换成字符串 var sideofString2 ="bbb" + 1 + 3 + "3"+"aaaa"; console.log(sideofString2); console.log(typeof sideofString2);// boolean值会被强制转换为数字,true被转为1,false转为0 var booleanResult = true + false; console.log(booleanResult);// 不是数字类型的字符串 或者 其他类型的运算,结果是NaN(除开加法运算,因为是拼接)不是数字类型的字符串 var str2 = "str2"; var sum7 = str2 - 1; var str3 = undefined; console.log(sum7); //NaN console.log(str3 - str2);</script></body></html>
注意:隐式类型转换的注意事项主要写在了上述的备注上面
Math方法
在任何一门已知的语言中,数学函数Math库的调用都是及其重要的,在js里面当然也是一样的。其调用的形式跟java里面也类似,静态方法的一种调用方法。
相关函数如下所示:
基本上常规用的也就上面这些了,调用都很简单。
阅读全文
1 0
- 从零开始前端学习[55]:类型转换和Math方法
- 从零开始前端学习[6]:关于html5的元素类型转换,行级元素,块级元素,行块级元素类型
- 从零开始学习c++之运算符重载与类型转换
- 从零开始学java(四)数据类型和类型转换
- 从零开始,学习web前端之DOM和BOM
- 【Web前端学习笔记】Javascript_01_变量,数据类型,类型转换
- Math类和BigDecimal 类型
- C类型转换,运算符,math.h
- 从零开始前端学习[51]:js中去操作css样式以及css属性的替代方法
- 《从零开始学Swift》学习笔记(Day48)——类型检查与转换
- 《从零开始学Swift》学习笔记(Day48)——类型检查与转换
- Android int 和 String 类型转换方法
- String类型转换和常用方法
- 从零开始,学习web前端之HTML基础
- 从零开始,学习web前端之css基础
- 从零开始,学习web前端之js基础
- 从零开始,学习web前端之js特效
- 从零开始,学习web前端之jQuery
- ThinkingInJava对this关键字的介绍
- 关于cellspacing、cellpadding属性问题
- 分布式事务一致性之三阶段提交
- leetcode解题方案--046--Permutations
- 使用Redis实现分布式锁及其优化
- 从零开始前端学习[55]:类型转换和Math方法
- 64位操作系统下运行debug
- 现代操作系统之进程与线程(上)
- 基础练习 完美的代价
- C#生成的应用程序版本如何修改
- css水平垂直居中三种实现方法
- 第一次使用这个网站,有关于vscode的问题想请教大家
- 深入学习VMware vSphere 6.pdf 免费下载
- Component Diagram