JavaScript的基础语法梳理

1. 变量

在 JavaScript 中,使用 varletconst 声明变量。

  • 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:布尔值(truefalse

    • 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 个元素


JavaScript的基础语法梳理
http://localhost:8090//archives/javascriptde-ji-chu-yu-fa-shu-li
作者
冯斌杰
发布于
2024年10月06日
许可协议