JavaScript基础

掌握JavaScript编程的基本概念和开发环境

什么是JavaScript?

JavaScript是一种轻量级的解释型编程语言,主要用于Web开发,为网页添加交互功能。它是Web的三大核心技术之一,与HTML和CSS并列。

你知道吗? JavaScript与Java是完全不同的语言,尽管名字相似。

JavaScript的历史

JavaScript由Brendan Eich于1995年在网景公司(Netscape)开发,最初名为Mocha,后来改为LiveScript,最终确定为JavaScript。1997年,JavaScript被提交给ECMA国际组织进行标准化,形成了ECMAScript规范。

JavaScript的主要特点

  • 解释型语言 - 无需编译,由浏览器直接解释执行
  • 动态类型 - 变量类型在运行时确定
  • 基于原型 - 使用原型链实现继承
  • 函数是一等公民 - 函数可以作为参数传递和返回值
  • 事件驱动 - 支持异步编程和事件处理
  • 跨平台 - 可以在各种浏览器和环境中运行

JavaScript的运行环境

JavaScript可以在多种环境中运行:

  • 浏览器环境 - 最常用的运行环境,通过内置的JavaScript引擎执行
  • Node.js - 服务器端JavaScript运行环境,基于Chrome V8引擎
  • 移动应用 - 通过React Native、Ionic等框架开发原生移动应用
  • 桌面应用 - 通过Electron、NW.js等框架开发跨平台桌面应用
  • 物联网设备 - 在嵌入式设备上运行JavaScript
  • 数据库 - MongoDB等数据库支持JavaScript查询

JavaScript引擎

不同的浏览器使用不同的JavaScript引擎:

浏览器 JavaScript引擎 特点
Chrome V8 高性能,开源,也用于Node.js
Firefox SpiderMonkey 第一个JavaScript引擎,由Brendan Eich开发
Safari JavaScriptCore 也称为Nitro,专注于能效
Edge Chakra 现已改用Chromium和V8引擎

第一个JavaScript程序

让我们从最简单的"Hello, World!"程序开始:

HTML中的JavaScript
<!DOCTYPE html>
<html>
<head>
    <title>第一个JS程序</title>
</head>
<body>
    <script>
        // 在浏览器控制台输出信息
        console.log("Hello, World!");
        
        // 在页面上显示警告框
        alert("欢迎学习JavaScript!");
        
        // 在页面上写入内容
        document.write("<h1>Hello, JavaScript!</h1>");
    </script>
</body>
</html>

代码解释

  • console.log() - 在浏览器控制台输出信息,主要用于调试
  • alert() - 显示一个警告对话框,包含指定的消息和确定按钮
  • document.write() - 将HTML表达式或JavaScript代码写入文档

JavaScript的引入方式

在HTML中有多种方式引入JavaScript代码:

1. 内联脚本

内联脚本
<script>
    console.log("这是内联脚本");
</script>

特点: 代码直接嵌入在HTML文件中,适用于小型脚本或特定页面的逻辑。

2. 外部脚本

外部脚本
<script src="script.js"></script>

特点: 代码存储在外部文件中,可以跨多个页面重用,有利于代码维护和缓存。

3. 事件处理脚本

事件处理
<button onclick="alert('按钮被点击了!')">
    点击我
</button>

特点: 直接在HTML元素上定义事件处理程序,适用于简单的交互。

4. 模块导入 (ES6+)

模块导入
<script type="module">
    import { functionName } from './module.js';
    functionName();
</script>

特点: ES6引入的模块系统,支持代码的模块化和依赖管理。

开发工具

开始学习JavaScript,你需要:

工具 用途 推荐
文本编辑器 编写代码 VS Code, Sublime Text, Atom
浏览器 运行和调试 Chrome, Firefox, Edge, Safari
开发者工具 调试和测试 浏览器内置工具
版本控制 代码管理 Git, GitHub, GitLab
包管理器 依赖管理 npm, Yarn
构建工具 自动化任务 Webpack, Parcel, Rollup

推荐的开发环境设置

  1. 安装一个现代浏览器(推荐Chrome或Firefox)
  2. 安装一个代码编辑器(推荐VS Code)
  3. 安装必要的浏览器扩展(如React Developer Tools等)
  4. 设置代码格式化工具(如Prettier)
  5. 配置代码检查工具(如ESLint)

浏览器控制台的使用

浏览器控制台是学习JavaScript的重要工具:

控制台常用命令
// 输出信息
console.log("普通信息");
console.warn("警告信息");
console.error("错误信息");
console.info("信息性消息");

// 清空控制台
console.clear();

// 计算执行时间
console.time("计时器");
// 一些代码...
console.timeEnd("计时器");

// 表格形式显示数据
console.table([{name: "John", age: 30}, {name: "Jane", age: 25}]);

// 分组显示
console.group("用户信息");
console.log("姓名: John");
console.log("年龄: 30");
console.groupEnd();
快捷键: 在浏览器中按F12打开开发者工具,选择Console标签页即可使用控制台。

控制台的其他有用功能

  • console.assert(condition, message) - 如果条件为false,则输出错误信息
  • console.count(label) - 记录特定标签被调用的次数
  • console.trace() - 输出堆栈跟踪
  • console.dir(object) - 以对象形式显示指定对象的属性

JavaScript的版本历史

JavaScript的发展经历了多个重要版本:

版本 年份 主要特性
ES1 1997 第一个标准化版本
ES3 1999 正则表达式,try/catch,更多内置对象
ES5 2009 严格模式,JSON支持,数组方法
ES6/ES2015 2015 类,模块,箭头函数,Promise,let/const
ES2016-2022 2016-2022 每年发布新特性,如async/await,可选链,空值合并等

实践练习

👆 请点击上方按钮进行演示操作

选择不同的演示按钮来探索JavaScript的各种功能和用法

尝试编写代码

练习代码
// 练习1: 变量声明和使用
let message = "Hello, JavaScript!";
const PI = 3.14159;
var count = 10;

console.log(message);
console.log("圆周率:", PI);
console.log("计数:", count);

// 练习2: 基本运算
let a = 5;
let b = 3;

console.log("加法:", a + b);
console.log("减法:", a - b);
console.log("乘法:", a * b);
console.log("除法:", a / b);
console.log("取余:", a % b);

// 练习3: 字符串操作
let firstName = "张";
let lastName = "三";
let fullName = firstName + " " + lastName;

console.log("全名:", fullName);
console.log("姓名长度:", fullName.length);

常见问题与解答

1. JavaScript和Java有什么关系?

尽管名字相似,但JavaScript和Java是两种完全不同的编程语言。JavaScript最初命名为LiveScript,后来为了营销目的改名为JavaScript,但实际上两者在语法、设计和用途上都有很大差异。

2. JavaScript只能在浏览器中运行吗?

不是的。虽然JavaScript最初是为浏览器设计的,但现在它可以在多种环境中运行,包括服务器(Node.js)、移动设备(React Native)和桌面应用程序(Electron)等。

3. 学习JavaScript需要什么基础?

学习JavaScript前,建议先了解HTML和CSS的基础知识,因为JavaScript通常用于操作网页内容和样式。但即使没有这些基础,也可以开始学习JavaScript。

下一步学习

现在你已经了解了JavaScript的基础概念,接下来可以学习: