JavaScript — 总结
介绍
JavaScript是一种广泛应用于Web开发的高级脚本语言,主要用于为网页添加交互功能。作为前端开发的三大核心技术之一,它与HTML(结构)和CSS(样式)协同工作,通过操作DOM元素实现动态内容更新、表单验证、动画效果等用户界面交互。
随着Node.js的出现,JavaScript也拓展至服务器端开发,实现全栈应用构建。该语言具有解释执行、动态类型、基于原型的面向对象等特性,支持事件驱动和异步编程模式。ES6标准引入了类、箭头函数、模块化等现代语法特性,大幅提升了开发效率。
其跨平台特性允许代码在浏览器、服务器、移动端等多环境运行。庞大的生态系统通过npm包管理器提供数百万开源库,配合React、Vue等前端框架及Express后端框架,形成完整的开发生态。凭借广泛的浏览器兼容性和活跃的开发者社区,JavaScript持续引领着现代Web技术的发展。
基础语法
JavaScript基础语法包括变量声明(var/let/const)、数据类型(基本类型如string、number;引用类型如object)、操作符(+、===)、控制结构(if/for)、函数定义(function或箭头函数)及事件处理。ES6新增解构、模板字符串等特性。
变量声明
var x = 10; // 函数作用域
let y = 20; // 块级作用域,可重新赋值
const z = 30; // 块级作用域,不可重新赋值
数据类型
- 原始类型: Number, String, Boolean, Null, Undefined, Symbol, BigInt
- 引用类型: Object (包括Array, Function, Date等)
运算符
- 算术: +,-,*,/,%
- 比较: ==, ===, !=, !==, >, <, >=, <=
- 逻辑: &&, ||, !
- 三元: condition ? expr1 : expr2
函数
JavaScript函数是可重复调用的代码块,使用`function`或箭头函数定义,可接收参数、返回值,具有作用域和闭包特性,支持作为变量传递或高阶函数使用,是模块化编程核心。
函数定义
// 函数声明
function add(a, b) {return a + b;
}// 函数表达式
const multiply = function(a, b) {return a * b;
};// 箭头函数
const divide = (a, b) => a / b;
高阶函数
function operate(a, b, operation) {return operation(a, b);
}operate(5, 3, (x, y) => x + y); // 8
对象
JavaScript对象是包含键值对的无序集合,可存储原始值、函数及其他对象。通过原型继承实现属性和方法的共享,支持动态增删属性,常用于封装数据和功能模块化开发,可通过字面量、构造函数或类创建。
对象创建
// 对象字面量
const person = {name: 'John',age: 30,greet() {console.log(`Hello, I'm ${this.name}`);}
};// 构造函数
function Person(name, age) {this.name = name;this.age = age;
}
Person.prototype.greet = function() {console.log(`Hello, I'm ${this.name}`);
};// Class (ES6)
class Person {constructor(name, age) {this.name = name;this.age = age;}greet() {console.log(`Hello, I'm ${this.name}`);}
}
ES6
JavaScript ES6是2015年发布的重大更新,引入箭头函数、类、模块、解构赋值、Promise等特性,强化块级作用域,支持模板字符串和迭代器,提升代码简洁性与开发效率,推动现代JavaScript编程范式演进。
解构赋值
const [a, b] = [1, 2];
const {name, age} = person;
扩展运算符
const arr1 = [1, 2];
const arr2 = [...arr1, 3, 4]; // [1, 2, 3, 4]const obj1 = {a: 1};
const obj2 = {...obj1, b: 2}; // {a: 1, b: 2}
模块化
// module.js
export const pi = 3.14;
export function double(x) { return x * 2; }// app.js
import { pi, double } from './module.js';
常用API
JavaScript常用API包括数组方法、字符串处理、DOM操作、事件监听、定时器、对象操作,支撑基础开发需求。
数组方法
const numbers = [1, 2, 3, 4];numbers.map(x => x * 2); // [2, 4, 6, 8]
numbers.filter(x => x > 2); // [3, 4]
numbers.reduce((a, b) => a + b); // 10
numbers.find(x => x > 2); // 3
numbers.some(x => x > 3); // true
numbers.every(x => x > 0); // true
字符串方法
'hello'.toUpperCase(); // 'HELLO'
'HELLO'.toLowerCase(); // 'hello'
'hello'.includes('ell'); // true
'hello'.startsWith('he'); // true
'hello'.endsWith('lo'); // true
'hello'.repeat(2); // 'hellohello'
总结
JavaScript是一种动态、弱类型的解释型脚本语言,广泛应用于网页交互与后端开发。其核心特性包括基于原型的面向对象设计、函数式编程能力及事件驱动机制。作为Web三大基石之一,JavaScript通过DOM操作实现页面动态更新,借助事件监听处理用户交互,配合AJAX技术完成异步数据请求,构成了现代Web应用的交互基础。
ES6标准带来重大革新,引入let/const块级作用域变量、箭头函数简化语法,模板字符串增强文本处理能力,解构赋值优化数据提取。异步编程模式从回调函数演进至Promise对象,最终通过async/await实现同步式写法,显著提升代码可读性。模块化系统(import/export)的加入使项目结构更清晰,Class语法糖则为传统原型继承提供更直观的面向对象表达方式。