js实现判断
判断语句的基本语法
在JavaScript中,判断语句主要通过if...else、switch等结构实现。if语句用于条件判断,else提供备选分支,else if可链式添加多个条件。
if (condition) {
// 条件为真时执行
} else {
// 条件为假时执行
}
多条件判断
使用else if或逻辑运算符(&&、||)可实现多条件判断。逻辑运算符常用于组合复杂条件。
if (score >= 90) {
grade = 'A';
} else if (score >= 80) {
grade = 'B';
} else {
grade = 'C';
}
三元运算符
三元运算符(? :)是if...else的简写形式,适合简单的条件赋值。
const result = condition ? valueIfTrue : valueIfFalse;
switch语句
switch适用于多分支判断,通过case匹配值,default处理未匹配情况。需注意break防止穿透。

switch (fruit) {
case 'apple':
console.log('Apple selected');
break;
case 'banana':
console.log('Banana selected');
break;
default:
console.log('Unknown fruit');
}
短路求值
利用逻辑运算符的短路特性可简化条件判断。&&在左值为真时返回右值,||在左值为假时返回右值。
const name = user.name || 'Anonymous';
const isValid = value && validate(value);
类型判断
使用typeof判断变量类型,instanceof检查对象实例。注意typeof null返回"object"的陷阱。

if (typeof variable === 'string') {
console.log('It is a string');
}
严格相等与宽松相等
===(严格相等)同时比较值和类型,==(宽松相等)会进行类型转换。推荐使用===避免意外行为。
if (x === 10) {
// 仅在x为数字10时执行
}
空值合并运算符
??(空值合并运算符)在左侧为null或undefined时返回右侧值,适合提供默认值。
const config = userConfig ?? defaultConfig;
可选链操作符
?.(可选链)避免访问深层属性时的报错,遇到null或undefined时停止并返回undefined。
const street = user.address?.street;






