在调用函数时不熟悉方括号的用法

Unfamiliar use of square brackets in calling a function

本文关键字:方括号 用法 不熟悉 调用 函数      更新时间:2023-09-26
在这个

页面的中间,我找到了下面的代码。

var plus = function(x,y){ return x + y };
var minus = function(x,y){ return x - y };
var operations = {
  '+': plus,
  '-': minus
};
var calculate = function(x, y, operation){
    return operations[operation](x, y);
}
calculate(38, 4, '+');
calculate(47, 3, '-');

现在,虽然我可以追踪它是如何工作的,但我以前从未见过这种方括号的使用。它看起来当然不像是在创建数组或引用数组的成员。这常见吗?如果是这样,其他例子在哪里?

它是一个字典访问,类似于数组,但使用键而不是数字索引。

operations['+']将计算函数 plus ,然后用参数 plus(x,y) 调用该函数。

它被称为括号表示法。在 JavaScript 中,您可以使用它来访问对象属性。

这里的operations是一个对象,其中符号+-指的是两个函数。

operations[operation]将返回对函数plus的引用,其中operation的值+,然后以下()将调用该函数

operations是一个

对象,当你这样做operations[property]时,你将获得相关的函数,然后你将操作数作为x和y传递。

operations['+'] function (x,y){ return x + y }这是plus

operations['-'] function (x,y){ return x - y }这是minus

我的JavaScript书说对象属性需要用任意名称命名。但"+"和"-"不是名称。从最初的问题中可以推断,对象属性只需要键控,而不是命名。