JavaScript 作用域

作用域指的是您有权访问的变量集合。

JavaScript 函数作用域

在 JavaScript 中有两种作用域类型:

  • 局部作用域
  • 全局作用域

JavaScript 拥有函数作用域:每个函数创建一个新的作用域。

作用域决定了这些变量的可访问性(可见性)。

函数内部定义的变量从函数外部是不可访问的(不可见的)。

局部 JavaScript 变量

在 JavaScript 函数中声明的变量,会成为函数的局部变量

局部变量的作用域是局部的:只能在函数内部访问它们。

ƙasance

// 此处的代码不能使用 carName 变量
function myFunction() {
    var carName = "porsche";
    // 此处的代码能使用 carName 变量
}

Jin kai ƙara ɗan wasa

由于只能在函数内部识别局部变量,因此能够在不同函数中使用同名变量。

在函数开始时会创建局部变量,在函数完成时会删除它们。

全局 JavaScript 变量

函数之外声明的变量,会成为全局变量

全局变量的作用域是全局的:网页的所有脚本和函数都能够访问它。

ƙasance

var carName = " porsche";
// 此处的代码能够使用 carName 变量
function myFunction() {
    // 此处的代码也能够使用 carName 变量
}

Jin kai ƙara ɗan wasa

JavaScript nisan

在 JavaScript 中,对象和函数也是变量。

作用域决定了从代码不同部分对变量、对象和函数的可访问性。

自动全局

如果您为尚未声明的变量赋值,此变量会自动成为全局变量。

这段代码将声明一个全局变量 carName,即使在函数内进行了赋值。

ƙasance

myFunction();
// 此处的代码能够使用 carName 变量
function myFunction() {
    carName = "porsche";
}

Jin kai ƙara ɗan wasa

严格模式

所有现代浏览器都支持以“严格模式”运行 JavaScript。

您将在本教程稍后的章节学习更多如何使用严格模式的知识。

A cikin ƙarima ƙarima ɗinna ƙarima, ƙarami ƙarima ɗinna ƙarima ɗinna ƙarima ɗinna ƙarima.

Ƙarami ƙarima ƙarima ɗinna HTML

A cikin JavaScript, ƙarima ƙarima ɗinna ƙarima ƙarima ƙarima ƙarima ƙarima.

A cikin HTML, ƙarima ƙarima ɗinna ƙarima wani ƙarima ɗinna ƙarima. Duk ƙarami ƙarima ɗinna ƙarima suna ƙarima ƙarima ƙarima ɗinna ƙarima.

ƙasance

var carName = "porsche";
// Koda ɗin ƙasa za a iya amfani da window.carName

Jin kai ƙara ɗan wasa

Ƙaranta

Idan ba a kaiya ƙaranta ba, kama ƙaranta ƙarima.

Ƙarami ƙarima ɗinna ƙarima (tai da ƙarima ɗinna ƙarima) za a ƙaruwa ƙarima ƙarima ɗinna ƙarima (tai da ƙarima ɗinna ƙarima).

Ƙarami ƙarima ɗinna ƙarima, kuma ƙarima ƙarima ɗinna ƙarima, ɗinna ƙarima ƙarima ɗinna ƙarima.

Ƙarami ƙarima ɗinna JavaScript

Ƙarami ƙarima ɗinna JavaScript za a ƙaruwa lokacin da su ƙaƙara.

Ƙarami ƙarima ɗinna ƙaranta za a ƙaruwa lokacin da ƙarima ƙarima.

Ƙarami ƙarima ɗinna ƙaranta za a ƙaruwa lokacin da ƙasa ƙanin.

Ƙarami ƙarima

Ƙarami ƙarima kuma ƙarami ƙarima na ƙarima.