java和Js中的类型转换_JavaScript 类型转换
原标题:JavaScript 类型转换
Number() 转换为数字, String() 转换为字符串, Boolean() 转化为布尔值。
Java 数据类型
在 Java 中有 5 种不同的数据类型:
string
number
boolean
object
function
3 种对象类型:
Object
Date
Array
2 个不包含任何值的数据类型:
null
undefinedtypeof 操作符
你可以使用 typeof操作符来查看 Java 变量的数据类型。
实例
typeof"John"// 返回 stringtypeof3.14// 返回 numbertypeofNaN // 返回 numbertypeoffalse// 返回 booleantypeof[1,2,3,4] // 返回 objecttypeof{name:'John', age:34} // 返回 objecttypeofnewDate() // 返回 objecttypeoffunction() {} // 返回 functiontypeofmyCar // 返回 undefined (如果 myCar 没有声明)typeofnull// 返回 object
请注意:
NaN 的数据类型是 number
数组(Array)的数据类型是 object
日期(Date)的数据类型为 object
null 的数据类型是 object
未定义变量的数据类型为 undefined
如果对象是 Java Array 或 Java Date ,我们就无法通过 typeof来判断他们的类型,因为都是 返回 Object。
constructor 属性
constructor属性返回所有 Java 变量的构造函数。
实例
"John".constructor // 返回函数 String() { [native code] }(3.14).constructor // 返回函数 Number() { [native code] }false.constructor // 返回函数 Boolean() { [native code] }[1,2,3,4].constructor // 返回函数 Array() { [native code] }{name:'John', age:34}.constructor // 返回函数 Object() { [native code] }newDate().constructor // 返回函数 Date() { [native code] }function() {}.constructor // 返回函数 Function(){ [native code] }
你可以使用 constructor 属性来查看是对象是否为数组 (包含字符串 "Array"):
实例
functionisArray(myArray) {
returnmyArray.constructor.toString().indexOf("Array") > -1;
}
你可以使用 constructor 属性来查看是对象是否为日期 (包含字符串 "Date"):
实例
functionisDate(myDate) {
returnmyDate.constructor.toString().indexOf("Date") > -1;
}
Java 类型转换
Java 变量可以转换为新变量或其他数据类型:
通过使用 Java 函数
通过 Java 自身自动转换将数字转换为字符串
全局方法 String()可以将数字转换为字符串。
该方法可用于任何类型的数字,字母,变量,表达式:
实例
String(x) // 将变量 x 转换为字符串并返回String(123) // 将数字 123 转换为字符串并返回String(100+ 23) // 将数字表达式转换为字符串并返回
Number 方法 toString()也是有同样的效果。
实例
x.toString()
(123).toString()
(100+ 23).toString()
在 章节中,你可以找到更多数字转换为字符串的方法:
方法
描述
toExponential()
把对象的值转换为指数计数法。
toFixed()
把数字转换为字符串,结果的小数点后有指定位数的数字。
toPrecision()
把数字格式化为指定的长度。将布尔值转换为字符串
全局方法 String()可以将布尔值转换为字符串。
String(false) // 返回 "false"String(true) // 返回 "true"
Boolean 方法 toString()也有相同的效果。
false.toString() // 返回 "false"true.toString() // 返回 "true"
将日期转换为字符串
全局方法 String()可以将日期转换为字符串。
String(Date()) // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)
Date 方法 toString()也有相同的效果。
实例
Date().toString() // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)
在 章节中,你可以查看更多关于日期转换为字符串的函数:
方法
描述
getDate()
从 Date 对象返回一个月中的某一天 (1 ~ 31)。
getDay()
从 Date 对象返回一周中的某一天 (0 ~ 6)。
getFullYear()
从 Date 对象以四位数字返回年份。
getHours()
返回 Date 对象的小时 (0 ~ 23)。
getMilliseconds()
返回 Date 对象的毫秒(0 ~ 999)。
getMinutes()
返回 Date 对象的分钟 (0 ~ 59)。
getMonth()
从 Date 对象返回月份 (0 ~ 11)。
getSeconds()
返回 Date 对象的秒数 (0 ~ 59)。
getTime()
返回 1970 年 1 月 1 日至今的毫秒数。将字符串转换为数字
全局方法 Number()可以将字符串转换为数字。
字符串包含数字(如 "3.14") 转换为数字 (如 3.14).
空字符串转换为 0。
其他的字符串会转换为 NaN (不是个数字)。
Number("3.14") // 返回 3.14Number(" ") // 返回 0Number("") // 返回 0Number("99 88") // 返回 NaN
在 章节中,你可以查看到更多关于字符串转为数字的方法:
方法
描述
parseFloat()
解析一个字符串,并返回一个浮点数。
parseInt()
解析一个字符串,并返回一个整数。一元运算符 +
Operator +可用于将变量转换为数字:
实例
vary = "5"; // y 是一个字符串varx = + y; // x 是一个数字
如果变量不能转换,它仍然会是一个数字,但值为 NaN (不是一个数字):
实例
vary = "John"; // y 是一个字符串varx = + y; // x 是一个数字 (NaN)
将布尔值转换为数字
全局方法 Number()可将布尔值转换为数字。
Number(false) // 返回 0Number(true) // 返回 1
将日期转换为数字
全局方法 Number()可将日期转换为数字。
d = newDate();
Number(d) // 返回 1404568027739
日期方法 getTime()也有相同的效果。
d = newDate();
d.getTime() // 返回 1404568027739
自动转换类型
当 Java 尝试操作一个 "错误" 的数据类型时,会自动转换为 "正确" 的数据类型。
以下输出结果不是你所期望的:
5+ null// 返回 5 null 转换为 0"5"+ null// 返回"5null" null 转换为 "null""5"+ 1// 返回 "51" 1 转换为 "1""5"- 1// 返回 4 "5" 转换为 5
自动转换为字符串
当你尝试输出一个对象或一个变量时 Java 会自动调用变量的 toString() 方法:
document.getElementById("demo").innerHTML = myVar;
// if myVar = {name:"Fjohn"} // toString 转换为 "[object Object]"// if myVar = [1,2,3,4] // toString 转换为 "1,2,3,4"// if myVar = new Date() // toString 转换为 "Fri Jul 18 2014 09:08:55 GMT+0200"
数字和布尔值也经常相互转换:
// if myVar = 123 // toString 转换为 "123"// if myVar = true // toString 转换为 "true"// if myVar = false // toString 转换为 "false"
如您还有不明白的可以在下面与我留言或是与我探讨QQ群308855039,我们一起飞!返回搜狐,查看更多
责任编辑:
java和Js中的类型转换_JavaScript 类型转换相关推荐
- return true Java_[Java教程]js中return,return true,return false的用法及区别
[Java教程]js中return,return true,return false的用法及区别 0 2015-11-16 23:00:03 1.语法及返回方式 ①返回控制与函数结果 语法为:retu ...
- java 中鼠标事件_[Java教程]js中鼠标事件总结
[Java教程]js中鼠标事件总结 0 2017-07-11 00:00:19 js中鼠标事件主要有onclick,onmousedown,onmouseup,oncontextmenu,ondblc ...
- java有push方法么_[Java教程]js中push和join方法使用介绍
[Java教程]js中push和join方法使用介绍 0 2013-10-09 07:00:17 push和join方法想必大家并不陌生吧,在本文将为大家详细介绍下js中的push和join方法的使用 ...
- java和js中遍历数组和对象的总结
java和js中遍历数组和对象的总结 在这儿写遍历数组和对象,权当复习和总结 1.java中数组的三种初始化方法 ①静态初始化 [java] view plaincopy 1. int[] arr = ...
- 从λ演算到函数式编程聊闭包(1):闭包概念在Java/PHP/JS中形式
什么是闭包 如果让谷哥找一下"闭包"这个词,会发现网上关于闭包的文章已经不计其数 维基百科上对闭包的解释就很经典: 在计算机科学中,闭包(Closure)是词法闭包(Lexical ...
- html中隐式转换成数字,详解JS中的隐式类型转换
JS中隐式类型转换 JS中的数据类型 JS中的数据类型分为两大类: 1.基本数据类型: 1.String 字符串 表示一段文本,例如:人的姓名.地址等 2.Number 数值 3.Boolean 布尔 ...
- JS中的数据强制类型转换
1.含义 强制类型转换指的是将一个数据类型强制转换为其他的数据类型 类型转换主要指,将其他的数据类型,转换为 String Number Boolean即字符串,数值和布尔值 2.将其他的数据类型转换 ...
- java和js中替换字符串的方法
//java中字符串的替换方法: String a = "吴林飞-1a_,唐姐-2,周帅-3"; String f = a.replaceFirst("-", ...
- java和js中判断两个字符串是否相等对比
链接一: JavaScript中的基本字符串与字符串对象的区别 链接二: JAVA如何判断两个字符串是否相等 链接三: js中的"=="和equals()以及is()三者的区别 在 ...
- Java和Js中的正则表达式
什么是正则表达式? 正则表达式(Regular Expression)就是用某种模式去匹配一类字符串的公式.如你要在一篇文章中查找第一个字是"罗"最后一个字是"浩&quo ...
最新文章
- 中国的TD-LTE-Advanced被国际电联确立为4G标准!
- WinForm经典窗体皮肤[重绘]
- linux mysql 主从数据库_linux mysql数据库的主从配置
- icloud 购买存储空间_如何释放iCloud存储空间
- jeesite的junit,数据没有插入?
- 数据库笔记(数据库操作)
- network---written test
- matlab矩阵信号,matlab - 如何在Matlab中使用移位版本的信号样本创建矩阵? - SO中文参考 - www.soinside.com...
- 埋石图根点lisp代码_GPS测量作业流程.doc
- 交易系统典藏书籍总汇以及系统交易、程序化交易等经典资料收藏
- Javascript校验含中文的字符串长度
- java 对象转map,map转对象
- OpenLayers按像素距离平移地图
- portainer的安装使用
- RSE2021/云检测:基于小波变换和连续多尺度空间注意的上下块深度网络云检测
- 经纬度差和米单位的换算
- html表格类似excel固定表头样式,(转)supertable像excel那样固定table的表头和第一列...
- 企业内部搭建OpenVirtualPrivateNetwork快速入门
- 基于Andro平台的软件开发若干关键技术研究(笔记)
- Proguardgui
热门文章
- window安装python3装环境变量_Windows下的Python安装与环境变量的配置
- jrtplib 打包做了哪些事_30岁前就实现财务自由的人,都做了哪些事
- elementui可编辑单元格_关于遥感解译点室内解译编号的读取编辑方法
- 戴尔win10插耳机还外放_通州附近戴尔笔记本电脑维修哪家强-北京信维佳业科技有限公司...
- 一根网线有这么多“花样”,你知道吗?
- HDLBits答案(6)_硬件模块设计的思考方式
- 数据采集串口通信系统verilog设计和仿真
- 字符串类型的数字比较大小_Python核心知识系列:数字与字符串类型
- 服务器端Session和客户端Session
- Python之socketserver模块和验证客户端链接的合法性