JavaScript流程控制、函数与对象基础
流程控制
条件语句
单分支if
if (condition) {
// 条件满足时执行
}
双分支if-else
if (condition) {
// 条件满足时执行
} else {
// 条件不满足时执行
}
let score = 75;
if (score >= 90) {
console.log("优秀");
} else {
console.log("继续努力");
}
// 输出:继续努力
多分支if-else if
if (condition1) {
// 条件1满足
} else if (condition2) {
// 条件2满足
} else {
// 所有条件不满足
}
let temp = 25;
if (temp > 30) {
console.log("炎热");
} else if (temp > 20) {
console.log("舒适");
} else {
console.log("凉爽");
}
// 输出:舒适
Switch语句
let fruit = "apple";
switch (fruit) {
case "banana":
console.log("黄色");
break;
case "apple":
console.log("红色");
break;
default:
console.log("未知水果");
}
// 输出:红色
循环结构
While循环
let counter = 3;
while (counter > 0) {
console.log(counter);
counter--;
}
// 输出:3 2 1
For循环
for (let i = 0; i < 5; i++) {
console.log(i * 2);
}
// 输出:0 2 4 6 8
For...of循环
const colors = ["red", "green", "blue"];
for (const color of colors) {
console.log(color.toUpperCase());
}
// 输出:RED GREEN BLUE
For...in循环
const user = { name: "Tom", age: 30 };
for (const key in user) {
if (user.hasOwnProperty(key)) {
console.log(`${key}: ${user[key]}`);
}
}
// 输出:name: Tom age: 30
三元运算符
const isMember = true;
const fee = isMember ? 10 : 20;
console.log(fee); // 输出:10
函数
函数定义
function greet(user) {
return `Hello, ${user}!`;
}
console.log(greet("Alice")); // 输出:Hello, Alice!
参数处理
function displayArgs() {
console.log(arguments.length);
}
displayArgs(1, 2, 3); // 输出:3
箭头函数
const square = num => num * num;
console.log(square(5)); // 输出:25
const add = (a, b) => a + b;
console.log(add(3, 7)); // 输出:10
对象
对象创建
const book = {
title: "JavaScript指南",
author: "张三",
price: 99
};
console.log(book.title); // 输出:JavaScript指南
日期对象
const now = new Date();
console.log(now.getFullYear()); // 输出当前年份
console.log(now.getMonth() + 1); // 输出当前月份
JSON处理
const data = { id: 1, name: "测试" };
const jsonStr = JSON.stringify(data);
console.log(jsonStr); // 输出:{"id":1,"name":"测试"}
const parsedData = JSON.parse(jsonStr);
console.log(parsedData.name); // 输出:测试
正则表达式
const emailPattern = /^\w+@\w+\.\w+$/;
console.log(emailPattern.test("test@example.com")); // 输出:true
console.log(emailPattern.test("invalid-email")); // 输出:false