数据类型转换
当对两个数据进行操作时,若数据类型不相同,需要将两个数进行数据转换,除了可以利用JavaScript的自动转换外,还可以根据程序的需要具体指定数据的转换类型
1.转布尔型
<script>
var con =prompt(); //prompt会记录用户输入的数据
if(Boolean(con)){
document.write('已输入内容');
}else{
document.write('无输入内容');
}
console.log(Boolean(con)); //当用户输入内容后结果为true,直接点击确定或取消则结果为flase
</script>
上述代码中通过Boolean( )函数对用户输入的内容进行数据内容转换。Boolean函数会将任何非空字符串和非零的数值转换为true,将空字符串,0,NaN,undefined和null转换为false
2.转数值型
开发过程中我们通常使用parseInt()函数或者parseFloat()函数对参与运算的数据进行转换,从而确保都是数值型的数据。
<script>
var num1=prompt("请输入求和的第一个数据:");
var num2=prompt("请输入求和的第二个数据");
//直接输出两个数的运算结果
console.log(num1+num2);
//对数值处理,转换为同一类型的数据在运算
console.log(parseInt(num1)+parseInt(num2));
</script>
注:多学一招
console.log(parseInt('123abc123')); //输出结果:123
//此处的16代表将数值转为16进制的数
console.log(parseInt('F',16)); //输出结果:15
parseInt()函数在遇到不能非数值时便会停止,纵使后面还有数值,也不会将他进行转换。且parseInt()函数的第二个参数可以用来设置带转换字符的进制数
<script>
//获取用户的输入,完成自动求和
var a=prompt("请输入求和的第一个数据:");
var b=prompt("请输入求和的第二个数据:");
var a=parseInt(a),b=parseInt(b);
if(isNaN(a)||isNaN(b)){
console.log('非法字符');
}else{
console.log(a+b);
}
</script>
注:各位观众老爷有没有觉得这个东西很眼熟啊,哈哈哈,没错,这个东西在很多app中都有运用,提示咋们输入正确的数值,学到这个可是相当于一个很实用的功能哦。
3.转字符型
在开发中,我们一般使用JavaScript提供的String()函数和toString()函数来进行转换。
<script>
//转字符型
var num3=num4=num5=4,num7=10;
console.log(String(12));
console.log(num3+num4+num5.toString());
//此处是将num7的值转先转为二进制的数,再将其转为字符串
console.log(num7.toString(2));
</script>
脚下留心:string和toString的区别是前者可以将任意类型转换为字符型,而后者除了null和undefined没有toString()方法外,其他数据类型都可以完成字符的转换。
表达式
表达式可以呢是各种类型的数据。变量和运算符的集合。
<script>
//表达式
var x,y,z; //声明变量
x=1; //将表达式“1”的值赋给变量x
y=2+3;
z=y=x;
console.log(z);
console.log(x+y);
</script>
小结:写了这么久博客(虽然也不是很久),我才忽然发现原来阿辉的博客主题名是有问题的啊,啊啊啊(此时阿辉内心是奔溃的的),唉,没办法,既然知道了,以后阿辉就会注意了,希望各位观众老爷不要嫌弃。如果以后有什么问题,麻烦各位观众老爷多多批评指出。