javascript - 将给定值与多维数组进行比较

标签 javascript arrays string multidimensional-array

我真的需要你的帮助。

我想像下面这样构造和构建一个数组:

var provinces = [
    ['Ontario','ON'],
    ['Quebec','QC'],
    ['British Columbia','BC'],
    ['Saskatchewan','SK']
];

然后,id 喜欢将值 (x) 与我的数组进行比较,即:

var x = 'Ontario'

if (x matches the value in the array list 'provinces') { then let x = ON }

你怎么用 javascript 写这样的东西?

非常感谢您的帮助,

最佳答案

使用 .filter() 函数接收真/假返回条件以从数组中检索元素:

var provinces = [
    ['Ontario','ON'],
    ['Quebec','QC'],
    ['British Columbia','BC'],
    ['Saskatchewan','SK']
];

var x = "Ontario";

//Find if any array item matches the word
var result = provinces.filter(function(item) {
  return item[0] == x;
});

//If there's a match, get the second index from the first result from the filter
if(result.length > 0)
  x = result[0][1];

alert(x);

关于javascript - 将给定值与多维数组进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30538444/

相关文章:

javascript - 在 RxJS Tap 中订阅对于异步逻辑来说是不好的做法吗?

javascript - 动画在 FF 和 IE 上卡住,但在 Chrome 上不会

javascript - 当我在 try-catch 中使用 setTimeout 时返回不起作用

java - 返回 float 组方法

具有 std::string 行为的 C++ 字符连接。请解释一下

javascript - Vue 选择的 Prop 不适用于 v-model

ios - 如何快速循环保存在后台

ios - 如何将多个对象保存到关系实体中。 Xcode

javascript - 如何将速度数组 [x, y, z] 转换为要存储在数据库中的字符串?

string - 为什么 Haskell 在处理字符串时分配大量内存?