javascript - 有没有办法检查JavaScript中的多个变量是否都相等?

标签 javascript jquery variables

我已经包含了 jQuery,所以如果它有助于使用它,它是可用的。

首先是一个简单的问题:

有没有办法检查多个变量是否彼此相等?

我可以使用传递关系逻辑并执行

if ((a == b) && (b == c)) && (c == d)) ... {

避免检查每个变量,但我认为应该有一种更奇特的方法来做到这一点。

如果您能仅回答第一部分,我们将不胜感激。

现在,棘手的部分...... 我有可变数量的变量(1 到 5 之间) 我知道它们的值可以是 DDBB 中 200 个可能值中的任何一个。

了解这些变量中每个值有多少个实例的最佳方法是什么?

例如...

如果我有...

var1 = VALUE_A;
var2 = VALUE_A;
var3 = VALUE_B;
var4 = VALUE_Z;
var5 = VALUE_Z;

...我想要得到类似的东西:

result["VALUE_A"] => 2
result["VALUE_B"] => 1
result["VALUE_Z"] => 2

////////////////////////////////////////////////////////// 或者如果我有...

var1 = VALUE_A;
var2 = VALUE_C;
var3 = VALUE_B;

...得到:

result["VALUE_A"] => 1
result["VALUE_C"] => 1
result["VALUE_B"] => 1

////////////////////////////////////////////////////////// 或者如果我有...

var1 = VALUE_A;
var2 = VALUE_A;
var3 = VALUE_A;
var4 = VALUE_C;
var5 = VALUE_C;

...得到:

result["VALUE_A"] => 3
result["VALUE_C"] => 2

////////////////////////////////////////////////////////// 或者如果我有...

var1 = VALUE_A;
var2 = VALUE_A;
var3 = VALUE_A;

...得到:

result["VALUE_A"] => 3

希望我说得清楚。例子是我能想到清楚解释的唯一方法。 如果这对于 Javascript 来说太复杂,或者处理这么多可能的值(最多 5 倍)会使浏览器变慢,我可以在 PHP 中完成并通过 AJAX 获取结果,但我宁愿不这样做。

最佳答案

这样的事情可以吗?

function countOccurrences(arr) {
    var result = {};
    $.each(arr, function(index, value) {
        if (!result[value])
            result[value] = 1;
        else
            result[value]++;
    });
    return result;
}

此函数接受值的数组,并返回一个对象,其键是元素,值是每个元素出现的次数。

关于javascript - 有没有办法检查JavaScript中的多个变量是否都相等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6864956/

相关文章:

php - Twig 动态变量赋值

php - 用 PHP 删除 GET 变量的好方法?

javascript - jslint --edition=latest 意外的 ES6 功能。常量

java - 使用 selenium 将 HTML javascript 解析为 JAVA

jquery - 将 slider 垂直 handle 更改为图像

javascript - 当从 iframe 关闭 colorbox 时从父级回调

javascript - 计算按钮被按下的次数

javascript - 在 document.write() 中调用 JavaScript 函数

jquery - 应用程序中的验证输入无效

python - 根据条件为变量赋值