总结
关系运算符
- 在其他编程语言中,往往使用== 两个等于号表示两个值相等,但是在js 中,使用全等运算符=== , 运算符是关系运算符的一种,用于比较两个值之间是否相等,所以如果想要判定数组长度和 1 是否相等,可以使用
arr.length === 1
- 其他关系运算符
- >:表示大于,比较左侧值是否大于右侧值
- <:表示小于,比较左侧值是否小于右侧值
- >=:表示大于等于,比较左侧的值是否大于或等于右侧的值
- <=:表示小于等于, 比较左侧的值是否小于或等于右侧的值
- == : 表示是否相等,只判断值是否相等,不判断数据类型
- !=:表示不等于,与相等完全相反
- === : 表示全等、判断值和数据类型是否相等
- !== : 表示不全等、与全等于完全相反
建议在可能的情况下使用===
运算符,因为它更严格,避免了因类型转换而导致的意外行为
console.log(5=="5");//true 在比较前,"5"被转换成数字5 console.log(5==="5");//false 因为类型不同
数据类型转换
在Javascript中, 数据类型转换可以分为两种
- 隐式类型转换 - Javascript自动完成, 不需要我们去干预,比如给定表达式 "foo" + 1,数字1会被隐式转换成字符串,最后的返回结果是foo1, 此外在if(条件判断)中,条件判断通常是一个布尔值,即true表示真,false表示假,但是假设我们给定的是一个整数类型的值,编译器会帮助我们进行数据类型转换,将之转换成布尔值
- 显式类型转换: 需要使用类型函数来转换, 我们使用 parseInt()、parseFloat()、toString()、Boolean() 等函数来执行显式类型转换。
- 转换成整数:
将数据转换成数字
Number("10") // 10
Number("") // 0
Number("3.14") // 3.14
Number(null) // 0
Number(true) // 转换为1
Number(false) // 转换为0
解析一个字符串,转换成整数(去掉小数点)
console.log(parseInt('1.9')); // 1
console.log(parseInt('123')); // 123
解析一个数据,转换成浮点数(保留小数点)
parseFloat(3.14); // 3.14
parseFloat("3.14") // 3.14
- 转换成字符串: 使用String()将类型转换成字符串。
String(10) // "10"
String(false) // "false"
- 转换成boolean值
只有0
、false
、NaN
和undefined
、null
、空字符串""
, 才会被转换成false ,其余数值都会被转换成true
console.log(0 == false); // true,因为在进行比较前,false 被转换为数字 0
console.log(0 === false); // false,因为类型不同
console.log("" == false); // true,false转为数字是0, ""转为数字也是0, 两者相等
console.log("" === false); // false,因为类型不同
该题
注意这里如果用C++来写:
- 错误示例:
int main(){
int n,a,b;
cin>>n;
for(int i=0;i<n;i++){
cin>>a>>b;
cout<<a+b<<endl;
}
return 0;
}
原因:题目要求循环输入n,而这里只输入进去了一次。
- 正确示例:
int main(){
int n,a,b;
while(cin>>n){
while(n--){
cin>>a>>b;
cout<<a+b<<endl;
}
}
return 0;
}
这里每输入一次n都将进行后续的操作。
标签:类型转换,转换成,false,log,运算符,console,数据 From: https://www.cnblogs.com/VickyWu/p/18430960