js强制类型转换和隐式类型转换,3种强制类型转换
本教程运行环境:windows7系统,javascript1.8.5版本1.8.5,戴尔G3电脑。
JavaScript是弱类型语言,它的值数据类型是可以改变的。
有些语言要求指定每个变量的数据类型。这样的语言被称为强类型语言,比如Java C。
强制类型转换
类型转换有两种:一种是显式转换,需要程序员手动编写代码转换;另一种是隐蔽转换,通过JavaScript解释器进行转换。
JavaScript为显式转换提供了以下函数:
1.转换为数字类型:数字(混合)、parseInt(字符串、基数)、parseFloat(字符串)
2.转换为字符串类型:toString(radix),String(mix)
3.转换为布尔类型:布尔(混合)
转换为数值类型
Number(mix)函数
Number(mix)函数,可以将任意类型的参数mix转换为数值类型。规则如下:
1.如果是布尔值,true和false分别转换为1和0。
2.如果是数值,则返回其本身。
3.如果为空,则返回0。
4.如果未定义,则返回NaN。
5.如果是字符串,请遵循以下规则:
A.如果字符串只包含数字,将其转换为十进制(忽略前导0)
B.如果字符串包含有效的浮点格式,则将其转换为浮点值(忽略前导0)
C.如果是空字符串,将其转换为0。
D.如果字符串包含上述以外的格式,则将其转换为NaN。
6.如果是对象,调用对象的valueOf()方法,然后按照前面的规则转换返回值。如果转换结果为NaN,则调用对象的toString()方法,再次根据前面的规则转换返回的字符串值。
例子
!声明文档类型
超文本标记语言
头
meta charset=UTF-8
标题数据类型转换/标题
/头
身体
脚本
println(Number(false));
println(Number(true));
println(编号(123));
println(Number(null));
println(数字(未定义));
println(数字(人));
函数println(a){
document.write(一个 br );
}
var person={ };//创建一个对象
//设置文本对象属性
person.name=黄世仁;
person.age=58
person .食欲=3;
person.eat=function(){
Document.write(吃饭);
}
/脚本
/body
/html
parseInt(string, radix)函数
参数描述:
字符串要解析的值。如果参数不是字符串,则转换为字符串(使用ToString抽象操作)。字符串开头的空格将被忽略。
Radix是2到36之间的整数(数学系统的基础),表示上述字符串的基数。例如,参数‘10’表示使用我们通常使用的十进制数字系统。始终指定此参数可以消除阅读此代码时的困惑,并确保转换结果是可预测的。当不指定基数时,不同的实现会产生不同的结果,默认值通常是10。
ParseInt(string,radix)函数,将字符串转换为整数值。它也有一定的规则:
1.忽略字符串前面的空格,直到找到第一个非空字符。
2.如果第一个字符不是数字符号或负号,则返回NaN
3.如果第一个字符是数字,则继续解析,直到字符串被解析或遇到非数字符号。
4.如果前面分析的结果是从0开始,那么就分析为八进制;如果以X开头,则被解析为十六进制。
5.如果指定了radix参数,则分辨率基于radix。
例子
!声明文档类型
超文本标记语言
头
meta charset=UTF-8
标题数据类型转换/标题
/头
身体
脚本
println(parseInt(12.34567 ,10));
println(parseInt(de ,10));
println(parseInt(0123456789 ,10));
println(parseInt(0e0 ,16));
println(parseInt(0101010001 ,2));
函数println(a){
document.write(一个 br );
}
/脚本
/body
/html
parseFloat(string)函数
parse float(string)函数,该函数将字符串转换为浮点数。
它的规则与parseInt基本相同,但也有点区别:字符串中第一个小数点符号是有效的,另外字符串会忽略所有前导0,如果字符串包含一个可解析为整数的数,则返回整数值而不是浮点数值。
示例
!声明文档类型
超文本标记语言
头
meta charset=UTF-8
标题数据类型转换/标题
/头
身体
脚本
println(解析float( 3.14 );
println(解析float( 314 e-2 ));
println(parse float( 0.0314 e 2 ));
println(解析浮点( 3.14更多非数字字符));
函数println(a){
document.write(一个br’);
}
/脚本
/body
/html
转换为字符串类型
toString(基数)方法。除不明确的和空之外的所有类型的值都具有toString()方法,其作用是返回对象的字符串表示。
示例
!声明文档类型
超文本标记语言
头
meta charset=UTF-8
标题数据类型转换/标题
/头
身体
脚本
var计数=10
println(计数。tostring());
var boolean=true
println(布尔值。tostring());
var today=new Date();
println(今日。tostring());
var shoppingCart=[鞋,连衣裙,皮带];
println(购物车。tostring());
var person={ };//字面量创建对象
//设置字面量对象属性
person.name=黄世仁;
person.age=58
人。食欲=3;
person.eat=function(){
document.write(正在吃饭);
}
println(人。tostring());
函数println(a){
document.write(一个br’);
}
/脚本
/body
/html
转换为布尔类型
布尔值(混合)函数,将任何类型的值转换为布尔值。
示例
!声明文档类型
超文本标记语言
头
meta charset=UTF-8
标题数据类型转换/标题
/头
身体
脚本
var计数=10
println(布尔型(计数));
println(Boolean(0));
println(布尔型(43));
println(Boolean(null));
println(布尔());
println(布尔型(未定义));
var shoppingCart=[鞋,连衣裙,皮带];
println(布尔型(购物车));
var person={ };//字面量创建对象
//设置字面量对象属性
person.name=黄世仁;
person.age=58
人。食欲=3;
person.eat=function(){
document.write(正在吃饭);
}
println(布尔型(人));
函数println(a){
document.write(一个br’);
}
/脚本
/body
/html[推荐学习:javascript高级教程】以上就是Java脚本语言三种强制类型转换是什么的详细内容,更多请关注我们其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。