JavaScript的基础语法梳理
1. 变量
在 JavaScript 中,使用 var
、let
和 const
声明变量。
var
:在函数作用域内有效,存在变量提升现象。let
:在块级作用域内有效,不存在提升现象。const
:用于声明常量,必须初始化,且在块级作用域内有效。
var name = "Alice"; // 使用 var 声明变量
let age = 30; // 使用 let 声明可变变量
const PI = 3.14; // 使用 const 声明常量
2. 数据类型
JavaScript 主要有以下几种数据类型:
基本数据类型:
Number
:数字(如:42
,3.14
)String
:字符串(如:"Hello, World!"
)Boolean
:布尔值(true
或false
)Undefined
:未定义(变量未初始化)Null
:空值(表示无值)Symbol
:唯一且不可变的值(ES6 引入)
复杂数据类型:
Object
:对象,集合键值对(如:{ name: "Alice", age: 30 }
)Array
:数组,特殊的对象,用于存储有序的集合(如:[1, 2, 3]
)
javascriptlet num = 42; // Number
let str = "Hello"; // String
let isActive = true; // Boolean
let undefinedVar; // Undefined
let emptyValue = null; // Null
let obj = { name: "Alice", age: 30 }; // Object
let arr = [1, 2, 3]; // Array
3. 运算符
JavaScript 提供了多种运算符,主要包括:
算术运算符:
+
(加)、-
(减)、*
(乘)、/
(除)、%
(取余)赋值运算符:
=
(赋值)、+=
(加赋值)、-=
(减赋值)等比较运算符:
==
(相等)、===
(严格相等)、!=
(不相等)、!==
(严格不相等)、>
(大于)、<
(小于)等逻辑运算符:
&&
(与)、||
(或)、!
(非)
javascriptlet a = 10;
let b = 5;
let sum = a + b; // 15
let isEqual = (a === b); // false
4. 控制结构
JavaScript 使用多种控制结构来控制程序的执行流。
条件语句:
if...else
:条件判断switch
:多重选择
javascriptif (age > 18) {
console.log("Adult");
} else {
console.log("Minor");
}
switch (day) {
case 1:
console.log("Monday");
break;
case 2:
console.log("Tuesday");
break;
default:
console.log("Another day");
}
循环语句:
for
:用于循环固定次数while
:条件为真时循环do...while
:至少执行一次的循环
javascriptfor (let i = 0; i < 5; i++) {
console.log(i);
}
let j = 0;
while (j < 5) {
console.log(j);
j++;
}
do {
console.log(j);
j--;
} while (j > 0);
5. 函数
JavaScript 中的函数可以被声明和调用,支持参数和返回值。
函数声明:
javascriptfunction greet(name) {
return "Hello, " + name;
}
console.log(greet("Alice")); // 输出: Hello, Alice
箭头函数(ES6 引入):
javascriptconst add = (x, y) => x + y;
console.log(add(2, 3)); // 输出: 5
6.对象
1. 创建对象
字面量创建:
var 对象名 = { 属性名 1 : 属性值1, 属性名 2 : 属性值2, 属性名 3 : 属性值3, ... 属性名 n : 属性值n, 方法 1 :function () { 方法体1 } 方法 n :function () { 方法体n } }
构造函数创建:
javascriptfunction Person(name, age) { this.name = name; this.age = age; } let person1 = new Person("Bob", 25);
Object.create() 方法:
javascriptlet proto = { greet: function() { console.log("Hello, " + this.name); } }; let person2 = Object.create(proto); person2.name = "Charlie";
2. 访问对象属性
for...in 语句:
用于对某个对象的所有属性进行循环操作。
for ( 变量 in 对象) {
循环体
}
with语句:
用于在访问一个对象的属性或方法避免重复引用指定对象名。
while (对象名) {
语句
}
7、数组
1. 定义
数组是用于存储有序集合的对象,可以包含多个值,支持多种数据类型。
2. 创建数组
字面量创建:
javascriptlet fruits = ["Apple", "Banana", "Cherry"];
Array 构造函数创建:
javascriptlet numbers = new Array(1, 2, 3);
数组元素的输入
1.直接在数组中对元素进行赋值。
2.利用数组对象的元素下标进行赋值。
3.用for语句批量进行赋值。
数组元素的输出
利用数组名获取输出元素值
利用下标获取指定元素输出
利用for语句
数组元素的添加和删除
添加:赋值
删除:使用delete关键字
数组的属性和方法
在JavaScript中,array对象拥有多个属性和方法,常用的属性和方法有:
push() 方法:在数组末尾添加一个或多个元素。
javascriptfruits.push("Orange"); // 添加 "Orange"
unshift() 方法:在数组开头添加一个或多个元素。
fruits.unshift("Mango"); // 添加 "Mango"
索引访问:
javascriptconsole.log(fruits[0]); // 输出: "Mango"
length 属性:获取数组的长度。
console.log(fruits.length); // 输出: 4
pop() 方法:删除数组末尾的元素,并返回该元素。
javascriptlet lastFruit = fruits.pop(); // 删除 "Orange"
shift() 方法:删除数组开头的元素,并返回该元素。
javascriptlet firstFruit = fruits.shift(); // 删除 "Mango"
splice() 方法:从数组中添加或删除元素。
fruits.splice(1, 1); // 从索引 1 开始,删除 1 个元素