一.进行相关类型的转换
1.变为数字型
<script>
//转换为数字
//1.用parseInt进行转换,注意如果被转换的为小数,将会向下取整
var a = prompt("请输入");
console.log(parseInt(a));
console.log(parseInt("3.3333"));
//2.parsenFloat 转换为小数
console.log(parseFloat('3.33'));
//3.Number(变量进行转换)
var char1 = '123';
console.log(Number(char1));
//4利用相关的算数运算进行转换
console.log('14' - 0);//进行减0操作
console.log('111' * 1);//利用乘1操作
</script>
2.变为字符串型
<script>
var c = 10;
console.log(c.toString());
console.log(String(10));
//重点利用加法进行变换,数字加上字符串结果为字符串
var b = 10 + '';
console.log(b);
</script>
结果:
3.转为bool类型
<script>
//只有转换为下面五个时结果为false,其余都是true
console.log(Boolean(''));
console.log(Boolean(0));
console.log(Boolean(NaN));
console.log(Boolean(undefined));
console.log(Boolean(null));
console.log('——————————————————');
console.log(Boolean('11'));
console.log(Boolean(100));
console.log(Boolean('⭐'));
</script>
结果:
案例实践:
用类型转换得到18位身份证的出生日期:
代码:
<script>
var IdCard = prompt("请输入");
var year = IdCard.slice(6, 10);
var month = IdCard.slice(10, 12);
var day = IdCard.slice(12, 14);
console.log(parseInt(year));
console.log(parseInt(month));
console.log(parseInt(day));
</script>
结果:
二.js的运算符
js有许多运算符跟c/c++一样,所以就说一下js中跟c语言中不一样的逻辑运算符
1.&&运算符
//&&运算,如:表达式1&&表达式2,如果1真,则执行表达式2,如果假则执行表达式1
console.log(100 && 222);
console.log(0 && 222);
//执行短路,r如果有空或者否定则为加,其他情况为真
console.log(0 && 11 + 123 && 11);
console.log('' && 11 + 123 && 11);
console.log(123 && 11 + 123 && 11 + 11 && 1);
结果:
2. ||运算符
<script>
// ||运算符,如果表达式1结果为真则返回表达式1,如果为假,则进行表达式2
console.log(123 || 11);
console.log(0 || 11);
//执行逻辑中断
var a = 1;
console.log(123 || a++);
console.log(a);
</script>
结果:
逻辑运算符优先级