JavaScript 是 web 开发人员必须学习的 3 门语言中的一门:
- HTML 定义了网页的内容
- CSS 描述了网页的布局
- JavaScript 控制了网页的行为
1. JS 的引用
1.1 在JavaScript中,可以使用<script>
标签将外部JavaScript文件引用到HTML页面中。
以下是一个简单的例子,展示了如何引用外部JavaScript文件:
<!DOCTYPE html>
<html>
<head>
<title>引用外部JavaScript文件</title>
<script src="path/to/your-script.js"></script>
</head>
<body>
<!-- 在这里编写您的HTML内容 -->
</body>
</html>
在上面的例子中,<script>
标签内的src
属性定义了外部JavaScript文件的路径。您需要将path/to/your-script.js
替换为实际的文件路径,以确保正确引用外部文件。
1.2还可以直接在HTML页面的<script>
标签内编写JavaScript代码,而无需引用外部文件。例如:
<!DOCTYPE html>
<html>
<head>
<title>内联JavaScript代码</title>
</head>
<body>
<!-- 在这里编写您的HTML内容 -->
<script>
// 在这里编写您的JavaScript代码
console.log("Hello, World!");
</script>
</body>
</html>
在上面的例子中,JavaScript代码直接嵌入到<script>
标签中。当浏览器解析到该标签时,会执行其中的JavaScript代码。
2. JavaScript入门
2.1 一些常见的JavaScript语法示例
- 变量声明和赋值
// 声明一个变量并赋值
let x = 5;
// 使用 const 声明一个常量
const PI = 3.14159;
// 声明变量,但不赋初始值
let message;
message = 'Hello, world!';
在JavaScript中,
var
是一种用于声明变量的关键字。在ES6(ECMAScript 2015)之前,它是声明变量的主要方式。然而,自ES6起,推荐使用let
和const
关键字来声明变量,因为它们提供了更好的作用域规则和变量声明的行为。
以下是使用var
声明变量的示例:
var x = 5; // 声明一个变量x并赋值为5
console.log(x); // 输出: 5
x = 10; // 变量x的值可以被修改
console.log(x); // 输出: 10
function example() {
var y = 20; // 声明一个变量y并赋值为20
console.log(y); // 输出: 20
}
example(); // 调用函数
console.log(y); // 报错,y在函数外部不可见
console.log(z); // 输出: undefined
var z = 30;
console.log(z); // 输出: 30
var
关键字声明的变量具有函数作用域,这意味着它们在函数内部是可见的。如果在函数内部使用var
声明一个变量,它将在整个函数范围内可用。
需要注意的是,使用
var
声明的变量存在变量提升的现象,即变量在声明之前就可以被访问到,但其值为undefined
。尽管var
仍然有效,但在现代的JavaScript开发中,推荐使用let
和const
来声明变量,以提供更好的可读性和代码维护性。
- 条件语句
let age = 18;
if (age >= 18) {
console.log('您已成年');
} else {
console.log('您未成年');
}
- 循环
// for 循环
for (let i = 0; i < 5; i++) {
console.log(i);
}
// while 循环
let count = 0;
while (count < 5) {
console.log(count);
count++;
}
- 函数
// 声明一个函数
function sayHello(name) {
console.log('Hello, ' + name + '!');
}
// 调用函数
sayHello('Alice');
- 数组
// 声明一个数组
let fruits = ['apple', 'banana', 'orange'];
// 访问数组元素
console.log(fruits[0]); // 输出: 'apple'
// 遍历数组
for (let i = 0; i < fruits.length; i++) {
console.log(fruits[i]);
}
- 对象
// 声明一个对象
let person = {
name: 'John',
age: 30,
city: 'New York'
};
// 访问对象属性
console.log(person.name); // 输出: 'John'
console.log(person['age']); // 输出: 30