📜  javascript make 变量 - Javascript (1)

📅  最后修改于: 2023-12-03 15:16:05.664000             🧑  作者: Mango

JavaScript Make 变量

JavaScript 是一种弱类型语言,因此在编写代码时,经常需要使用变量来存储和操作数据。

本文将介绍如何使用 JavaScript 创建变量。

变量的声明

在 JavaScript 中,可以使用 varletconst 关键字来声明变量。

使用 var 声明变量

在早期版本的 JavaScript 中,使用 var 是唯一声明变量的方法。因此,在早期的代码中,经常可以看到如下的代码:

var myVariable = "Hello World";

但是,使用 var 声明的变量具有一定的缺陷。因为 var 声明的变量是函数作用域,所以在某些场景中,会导致变量提升和作用域污染的问题。因此,在 ES6 中引入了 letconst 两个关键字来解决这些问题。

使用 let 声明变量

let 关键字是在 ES6 中引入的。使用 let 声明的变量具有块级作用域,因此可以有效避免变量提升和作用域污染的问题。例如:

if (true) {
  let myVariable = "Hello World";
}
console.log(myVariable);
// 输出 undefined

在上面的代码中,因为 myVariable 使用 let 声明,所以它的作用域只是 if 代码块,因此在 if 代码块之外访问 myVariable 时,会输出 undefined。

使用 const 声明常量

const 关键字也是在 ES6 中引入的。使用 const 声明的变量是常量,一旦声明之后,就不能重新赋值。例如:

const PI = 3.14;
PI = 3.1415;
// 抛出 TypeError 异常

在上面的代码中,因为 PI 使用 const 声明,所以在第二行的赋值操作会抛出 TypeError 异常。

变量的定义

除了声明变量之外,在 JavaScript 中还需要定义变量的初始值。

使用字面量定义变量

最简单的方法是使用字面量定义变量的初始值。例如:

let myVariable = "Hello World"; // 字符串字面量
let myNumber = 3.14; // 数字字面量
let myBoolean = true; // 布尔字面量
let myArray = [1, 2, 3]; // 数组字面量
let myObject = { name: "Tom", age: 18 }; // 对象字面量
使用表达式定义变量

也可以使用表达式来定义变量的初始值。例如:

let x = 1 + 1;
let y = "Hello" + " World";
let z = myArray.length;
变量的命名

在 JavaScript 中,变量的命名需要满足以下规则:

  • 只能包含字母、数字、下划线 (_) 或美元符号 ($)
  • 第一个字符必须是字母、下划线 (_) 或美元符号 ($)
  • 区分大小写,因此 myVariable 和 MyVariable 是不同的变量名
变量的作用域

变量的作用域决定了变量在程序中的可见范围。

全局作用域

在函数外部定义的变量具有全局作用域。这意味着,在整个程序中都可以访问这些变量。例如:

let myVariable = "Hello World";
function myFunction() {
  console.log(myVariable);
}
myFunction(); // 输出 "Hello World"

在上面的代码中,myVariable 在函数外部定义,因此具有全局作用域。在 myFunction 函数中访问 myVariable 时,会输出 "Hello World"。

局部作用域

在函数内部定义的变量具有局部作用域。这意味着,在函数内部可以访问这些变量,但在函数外部无法访问。例如:

function myFunction() {
  let myVariable = "Hello World";
  console.log(myVariable);
}
myFunction(); // 输出 "Hello World"
console.log(myVariable);
// 抛出 ReferenceError 异常

在上面的代码中,myVariable 在函数内部定义,因此具有局部作用域。在 myFunction 函数中访问 myVariable 时,会输出 "Hello World"。在函数外部访问 myVariable 时,会抛出 ReferenceError 异常。

总结

JavaScript 中使用变量来存储和操作数据。可以使用 varletconst 关键字来声明变量。变量的定义可以使用字面量或表达式。变量的命名需要满足一定的规则。变量的作用域决定了变量在程序中的可见范围。