JavaScript 中的多变量赋值 您所在的位置:网站首页 为input赋值 JavaScript 中的多变量赋值

JavaScript 中的多变量赋值

2023-03-12 02:35| 来源: 网络整理| 查看: 265

当前位置:主页 > 学无止境 > WEB前端 > WEB前端 编程语言 网络 算法 操作系统 数据库 JavaScript 中的多变量赋值 作者:迹忆客 最近更新:2023/03/10 浏览次数:

本教程将解释 JavaScript 中的多个变量赋值,因为变量是我们编码中最重要的部分。

有时,我们必须做许多变量声明和赋值,因为它们具有相同的值。如何?让我们了解一下。

在 JavaScript 中使用 = 运算符分配多个变量

假设我们有 variable1、variable2 和 variable3,并且希望所有三个变量的值都为 1。

var variable1 = 1, variable2 = 1, variable3 = 1; console.log(variable1,variable2,variable3); //1,1,1 var variable1 = variable2 = variable3 = 1; console.log(variable1,variable2,variable3); //1,1,1

输出:

1, 1, 1 1, 1, 1

它们看起来是等价的,但事实并非如此。原因是变量的范围和赋值优先。

赋值运算符在 JavaScript 中是右关联的,这意味着它在解析最右边之后再解析最左边。

让我们再举一个例子来理解变量 scope 和赋值 precedence。

function test1() { var variable1 = 1, variable2 = 1, varialbe3 = 1; } function test2() { var varialbe1 = variable2 = varialbe3 = 1; } test1(); console.log(window.variable2); // undefined test2(); console.log(window.variable2); // 1. Aggh!

输出:

undefined 1

关注代码并看到 variable1、variable2 和 variable3 在函数范围内并且是 test1() 的局部。

它们在 test1() 方法之外不可用,这就是返回 undefined 的原因。这里,var variable1 = 1, variable2 = 1, varialbe3 = 1; 相当于 var variable1 = 1; var 变量 2 = 1; var varialbe3 = 1;。

现在,观察 test2() 函数。由于 var 关键字,variable1 在函数范围内,但 variable2 和 variable3 是泄露的,因为它们不是用 var 关键字编写的。

它们可以在 test2() 函数之外全局访问。请记住,变量声明只是提升。

然而,precedence 是 right-associative,这意味着 var variable1 = (window.variable2 =(window.variable3 = 1));。

这意味着 variable3 将首先分配给 1,然后 variable3 的值将分配给 variable2,最后 variable2 的值将分配给 variable1。

为了避免 test2() 中的变量泄漏,我们可以将变量声明和赋值分成两行。这样,我们可以将 variable1、variable2 和 variable3 限制在 test2() 函数范围内。

function test1() { var variable1 = 1, variable2 = 1, varialbe3 = 1; } function test2() { var variable1, variable2, variable3; variable1 = variable2 = variable3 = 1; } test1(); console.log(window.variable2); // undefined test2(); console.log(window.variable2); // undefined

输出:

undefined undefined 在 JavaScript 中使用带有 fill() 函数的解构赋值进行多变量赋值 function test() { var [a, b, c, d] = Array(4).fill(1); console.log(a,b,c,d) //1, 1, 1, 1 } test(); console.log(window.a); // undefined

输出:

1, 1, 1, 1 undefined

解构赋值有助于为多个变量赋值相同的值,而不会将它们泄漏到函数之外。

fill() 函数使用静态值更新所有数组元素并返回修改后的数组。你可以在这里阅读更多关于 fill() 的内容。

上一篇:在 JavaScript 中深度克隆对象

下一篇:为什么全局变量在 JavaScript 中给出未定义的值

相关文章 JavaScript 有效变量名

发布时间:2023/03/11 浏览次数:138 分类:WEB前端

本教程通过实际示例演示了 JavaScript 有效的变量名称。文章还列出了编写有效变量名的规则。

在 JavaScript 中获取 onClick 按钮 ID

发布时间:2023/03/11 浏览次数:78 分类:WEB前端

本教程将教你如何获取单击的 HTML 按钮的 ID。我们将解释可用于获取 ID 的四种方法。这些方法包括 this.id、event.target.id、addEventListener 和 jQuery 的使用。

使用 JavaScript 将 ID 添加到元素

发布时间:2023/03/11 浏览次数:191 分类:WEB前端

本教程演示了如何使用 JavaScript 将 ID 属性添加到 HTML 元素。

JavaScript 使用变量作为键

发布时间:2023/03/11 浏览次数:54 分类:WEB前端

JavaScript 对象被定义在一个键值对中,其中的键代表唯一的身份,并且值不必一直是独占的。本文我们将在 JavaScript 中使用变量作为键。

在 JavaScript 中声明全局变量

发布时间:2023/03/11 浏览次数:180 分类:WEB前端

本教程介绍了如何在 JavaScript 中声明全局变量。

JavaScript 按 ID 删除元素

发布时间:2023/03/11 浏览次数:151 分类:WEB前端

本教程教授如何使用 JavaScript 中的 id 删除 html 元素。

在 JavaScript 中访问会话变量

发布时间:2023/03/11 浏览次数:191 分类:WEB前端

在本文中,我们将看到如何在 JavaScript 中访问会话变量。

在 JavaScript 中将 ID 添加到 HTML 元素

发布时间:2023/03/11 浏览次数:173 分类:WEB前端

在本文中,我们将讨论如何使用 JavaScript 中的 Element.id 属性为 HTML 元素设置 ID。

在 JavaScript 中打印 div 元素的内容

发布时间:2023/03/11 浏览次数:64 分类:WEB前端

本教程展示了如何在 JavaScript 中打印 div 元素的内容。

转载请发邮件至 [email protected] 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有