跳到主要内容
极客日志极客日志
首页博客AI提示词GitHub精选代理工具
搜索
|注册
博客列表
JavaScriptNode.js大前端

JavaScript 零基础入门指南

JavaScript 是一门运行在客户端的脚本语言,通过浏览器解释执行。文章涵盖基础语法、变量命名规范、数据类型转换、流程控制语句及数组操作。内容包括函数定义与调用、DOM 元素获取与事件处理、BOM 定时器使用等核心知识。最后提供实践建议,强调动手编码、从小案例入手、善用控制台调试以及正确面对报错,适合初学者系统掌握 JavaScript 开发基础。

字节跳动发布于 2026/3/16更新于 2026/4/2810 浏览

一、JavaScript 到底是什么?

JavaScript 是一门运行在客户端的脚本语言,不需要编译,浏览器会逐行解释执行。它的创始人布兰登・艾奇只用了 10 天就完成了设计,最初叫 LiveScript,后来和 Sun 合作后改名为 JavaScript。

现在的 JS 用途可广了:不仅能做表单验证(比如密码强度检测)、网页特效,还能通过 Node.js 做服务端开发,甚至可以开发桌面程序、App 和游戏。简单说,HTML 决定网页的结构(像人的身体),CSS 负责样式(像穿衣服化妆),而 JS 就是让网页'动起来'的核心(像人的动作)。

二、基础语法

1. 书写方式 JS 有三种书写方式,新手建议从内嵌式开始:

  • 行内式:写在 HTML 标签的事件属性中,适合少量代码
  • 内嵌式:写在 script 标签中,适合代码量多的情况

2. 变量与命名规范 变量就像一个存放数据的容器,用 var 关键字声明:

var age = 18; // 声明并赋值
var name; // 只声明不赋值,默认是 undefined
name = "小明"; // 后续赋值

命名变量有几个重要规则,一定要记牢: (1) 由字母、数字、下划线_、美元符号$组成 (2) 不能以数字开头,严格区分大小写 (3) 不能用关键字(比如 var、for) (4) 遵守驼峰命名法,比如 myUserName

3. 数据类型与转换 JS 是弱类型语言,不用提前声明变量类型,赋值后会自动确定类型。主要有 5 种基本数据类型:

  • 数字型(Number):整数、小数都算,比如 21、3.14
  • 字符串型(String):必须用引号包裹,单双引号都可以,比如"你好"、'JavaScript'
  • 布尔型(Boolean):只有 true(真)和 false(假)两个值,和数字相加时 true=1、false=0
  • 未定义型(Undefined):声明了变量但没赋值
  • 空值(Null):变量的值为空

判断变量类型用 typeof 运算符,比如 typeof age 会返回 number。实际开发中经常需要类型转换,重点记住这几种:

// 转字符串
var num = 123;
num.toString(); // 方法 1
String(num); // 方法 2
num + "字符串"; // 方法 3,最常用

// 转数字型(重点)
parseInt("78"); // 转整数
parseFloat("78.21"); // 转小数
Number(); 
 - ; 
"123"
// 强制转换
"123"
0
// 隐式转换,简单好用

三、流程控制与数组

1. 流程控制语句 代码默认是顺序执行的,通过流程控制可以改变执行顺序,主要分三种:

分支结构:if-else 和 switch

// if-else 适合范围判断
var score = 85;
if (score >= 90) {
  console.log("优秀");
} else if (score >= 60) {
  console.log("及格");
} else {
  console.log("不及格");
}

// switch 适合固定值判断
var day = 3;
switch (day) {
  case 1: console.log("周一"); break;
  case 2: console.log("周二"); break;
  default: console.log("其他");
}

循环结构:for、while、do-while 最常用的是 for 循环,比如打印 1-10:

for (var i = 1; i <= 10; i++) {
  console.log(i);
}

跳转语句:break(跳出整个循环)和 continue(跳出本次循环)

2. 数组的使用 数组能把一组相关数据存放在一起,方便管理:

// 创建数组
var fruits = ["苹果", "香蕉", "橙子"]; // 推荐用这种字面量方式

// 获取元素(索引从 0 开始)
console.log(fruits[0]); // 输出"苹果"

// 遍历数组
for (var i = 0; i < fruits.length; i++) {
  console.log(fruits[i]);
}

// 新增元素
fruits[fruits.length] = "葡萄"; // 末尾添加

四、函数

函数就是封装一段可重复使用的代码块,比如计算两个数的和:

// 声明函数
function add(a, b) { // a 和 b 是形参
  return a + b; // 返回结果
}

// 调用函数
var result = add(3, 5); // 3 和 5 是实参
console.log(result); // 输出 8

注意事项: (1) 函数不调用不会执行,调用时别忘了加括号 (2) 形参和实参数量不匹配时,多余的形参会是 undefined (3) 用 return 返回结果,函数执行到 return 就会停止

五、DOM 操作:让网页动起来

DOM 就是文档对象模型,把网页上的元素都变成可操作的对象。学会 DOM,就能实现各种交互效果了。

1. 获取元素 要操作元素,首先得找到它:

// 根据 ID 获取(最常用)
var box = document.getElementById("box");

// 根据标签名获取
var lis = document.getElementsByTagName("li");

// H5 新增方式(推荐)
var box = document.querySelector(".box"); // 根据选择器获取第一个元素
var boxes = document.querySelectorAll(".box"); // 获取所有匹配元素

2. 事件处理 事件就是用户的操作(比如点击、鼠标经过),通过事件可以触发函数执行。事件三要素:事件源、事件类型、事件处理程序。

// 案例:点击按钮弹出提示
var btn = document.getElementById("btn");
btn.onclick = function() {
  alert("按钮被点击了!");
};

常用的鼠标事件有:onclick(点击)、onmouseover(鼠标经过)、onmouseout(鼠标离开)等。

3. 操作元素

  • 改变内容:用 innerHTML(识别 HTML 标签)或 innerText(不识别标签)
var div = document.querySelector("div");
div.innerHTML = "<strong>Hello</strong>"; // 显示粗体的 Hello
  • 操作属性:比如修改图片 src、链接 href
  • 修改样式:通过 style 属性(行内样式)或 className(类名)
// 方式 1:style 属性
div.style.color = "red";
div.style.fontSize = "20px"; // 驼峰命名法

// 方式 2:className(适合多个样式)
div.className = "active";

六、BOM 操作:控制浏览器

BOM 是浏览器对象模型,主要操作浏览器窗口,核心对象是 window。

1. 定时器 定时器非常实用,比如倒计时、自动切换图片等,有两种:

  • setTimeout():延迟指定时间执行一次(炸弹定时器)
  • setInterval():每隔指定时间执行一次(闹钟定时器)
// 案例:5 秒后关闭广告
var ad = document.getElementById("ad");
var timer = setTimeout(function() {
  ad.style.display = "none";
}, 5000);

// 停止定时器
clearTimeout(timer);

2. 窗口事件

  • 页面加载事件:window.onload(页面全部加载完成后执行)
  • 窗口大小改变事件:window.onresize(适合响应式布局)

七、学习心得与建议

  1. 多写代码:JS 是实践性很强的语言,光看理论没用,每个知识点都要动手敲代码验证
  2. 从小案例入手:先做简单的效果(比如表单验证、倒计时),逐步积累信心
  3. 善用控制台:console.log() 是调试神器,遇到问题多打印变量看值
  4. 不要怕报错:新手遇到报错很正常,学会看错误信息,慢慢培养排错能力

目录

  1. 一、JavaScript 到底是什么?
  2. 二、基础语法
  3. 三、流程控制与数组
  4. 四、函数
  5. 五、DOM 操作:让网页动起来
  6. 六、BOM 操作:控制浏览器
  7. 七、学习心得与建议
  • 💰 8折买阿里云服务器限时8折了解详情
  • 💰 8折买阿里云服务器限时8折购买
  • 🦞 5分钟部署阿里云小龙虾了解详情
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Ubuntu 24.04 安装 NVIDIA 驱动及 CUDA 开发环境完整指南
  • OpenClaw 部署飞书机器人实战指南
  • UTF-8 表情符号及 Web 表情编码翻译表
  • 深度解析 WebMCP:让网页成为 AI 智能体的工具库
  • MiniMax 海螺 AI 视频:图片与文本生成高质量视频
  • AI 时代:为何‘人人都是产品经理’成为现实
  • FastAPI:Python 高性能 Web 框架核心特性解析
  • Stable Diffusion v4.10 与 ComfyUI 整合包使用指南
  • JavaScript 基础语法与 jQuery 入门详解
  • DBeaver 连接 Kerberos 认证的 Hive 数据库 (Apache/HDP)
  • Django REST Framework 企业级 API 架构实战
  • 搜索二叉树与哈希表(HashMap/HashSet)原理及实现
  • VSCode Copilot 加载过慢或无法使用的解决方案
  • SpringBoot Actuator 未授权访问漏洞修复方案
  • 基于 Java 的百度地图路线规划服务开发指南
  • Java Web 开发基础 (1) —— Spring Web MVC
  • AI绘画实战:从DALL·E 3到Stable Diffusion 3,手把手教你搭建自己的AI画室(含ControlNet配置)
  • 三级倒立摆 LQR 控制:Webots 仿真与 C 语言实现
  • JavaScript reduce 方法详解与实战
  • AI 调参实战:贝叶斯优化与 Optuna 应用

相关免费在线工具

  • Keycode 信息

    查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online

  • Escape 与 Native 编解码

    JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online

  • JavaScript / HTML 格式化

    使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online

  • JavaScript 压缩与混淆

    Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online