
JavaScript 入门教程
一、引言
JavaScript(简称 JS)是一种广泛用于Web开发的脚本语言。它不仅可以用于客户端的网页交互,还可以用于服务器端编程(如Node.js)。本教程旨在帮助初学者快速上手JavaScript,掌握其基本语法和常用功能。
二、环境准备
- 浏览器:现代浏览器(如Chrome、Firefox、Edge等)都内置了JavaScript引擎,可以直接在浏览器的开发者工具中运行JS代码。
- 文本编辑器:推荐使用Visual Studio Code、Sublime Text或Atom等轻量级文本编辑器来编写JS代码。
- 在线平台:也可以使用CodePen、JSFiddle等在线代码编辑和运行平台。
三、基础语法
变量声明与赋值
var name = "Alice"; // 使用 var 关键字声明变量 let age = 25; // 使用 let 关键字声明变量(ES6引入) const gender = "Female"; // 使用 const 关键字声明常量(值不可变)数据类型
- 数字(Number):42, 3.14
- 字符串(String):"Hello, World!", 'JavaScript'
- 布尔值(Boolean):true, false
- 对象(Object):{name: "Alice", age: 25}
- 数组(Array):[1, 2, 3], ["apple", "banana"]
- 空值(Null)和未定义(Undefined)
运算符
- 算术运算符:+, -, *, /, %
- 比较运算符:<, >, <=, >=, ==, !=, ===, !==
- 逻辑运算符:&&, ||, !
条件语句
if (age >= 18) { console.log("You are an adult."); } else { console.log("You are a minor."); }循环语句
for (let i = 0; i < 5; i++) { console.log(i); } let j = 0; while (j < 5) { console.log(j); j++; }
四、函数
函数声明
function greet(name) { return "Hello, " + name + "!"; } console.log(greet("Alice")); // 输出:Hello, Alice!匿名函数与箭头函数
const add = function(a, b) { return a + b; }; const multiply = (x, y) => x * y; console.log(multiply(2, 3)); // 输出:6
五、DOM 操作
获取元素
const element = document.getElementById("myElement"); const elements = document.getElementsByClassName("myClass");修改内容
element.innerHTML = "<h1>New Content</h1>"; element.textContent = "Plain text content";添加事件监听器
element.addEventListener("click", function() { alert("Element clicked!"); });
六、异步编程
回调函数
function fetchData(callback) { setTimeout(() => { callback("Data fetched!"); }, 1000); } fetchData(function(data) { console.log(data); // 输出:Data fetched! });Promise
const fetchData = () => { return new Promise((resolve, reject) => { setTimeout(() => { resolve("Data fetched with Promise!"); }, 1000); }); }; fetchData().then(data => { console.log(data); // 输出:Data fetched with Promise! }).catch(error => { console.error(error); });async/await
const fetchData = async () => { try { const data = await new Promise((resolve, reject) => { setTimeout(() => { resolve("Data fetched with async/await!"); }, 1000); }); console.log(data); // 输出:Data fetched with async/await! } catch (error) { console.error(error); } }; fetchData();
七、ES6 新特性
模板字符串
const name = "Alice"; const greeting = `Hello, ${name}!`; console.log(greeting); // 输出:Hello, Alice!解构赋值
const person = {name: "Alice", age: 25}; const {name, age} = person; console.log(name, age); // 输出:Alice 25默认参数
function greet(name = "Guest") { return "Hello, " + name + "!"; } console.log(greet()); // 输出:Hello, Guest!
八、学习资源推荐
- 官方文档:Mozilla Developer Network (MDN)
- 在线课程:Codecademy、Coursera上的JavaScript相关课程
- 书籍:《JavaScript权威指南》、《JavaScript高级程序设计》
九、总结
通过本教程的学习,你已经掌握了JavaScript的基础语法、函数、DOM操作以及异步编程的基本概念。接下来,你可以继续深入学习ES6及以后的新特性,并结合实际项目提升你的编程能力。祝你学习愉快!
