【问题标题】:Jquery, Find a subarray that contains a valueJquery,查找包含值的子数组
【发布时间】:2022-01-01 22:25:06
【问题描述】:

我想将一个变量“推送”到一个包含值的子数组中。这是为了集成到一个“for循环”中。但它不起作用..:-(我的错误在哪里?谢谢。

var add = "purple";
var val = "white";

arr = [
    ["blue","green","brown"],
    ["white","gray","black"],
    ["yellow","pink","red"]
];

subarr = [].indexOf(val) > -1;
arr[subarr].push(add);

/*
expected output :
arr = [
    ["blue","green","brown"],
    ["white","gray","black","purple"],
    ["yellow","pink","red"]
]
*/

【问题讨论】:

  • 为什么要用 jQuery 来完成?
  • @VLAZ :确实,我应该输入“javascript”...对不起...
  • 找不到数组怎么办?
  • @NinaScholz :使用我的 function() (我没有在声明中显示),数组中总会有一个子数组。

标签: javascript jquery arrays multidimensional-array push


【解决方案1】:

你在看

subarr = [].indexOf(val) > -1;

放入一个空数组。

相反,您可以找到子数组,如果存在则将值推送给它。

const
    add = "purple";
    val = "white",
    arr = [["blue", "green", "brown"], ["white", "gray", "black"], ["yellow", "pink", "red"]],
    sub = arr.find(a => a.includes(val));

if (sub) sub.push(add);

console.log(arr);
.as-console-wrapper { max-height: 100% !important; top: 0; }

【讨论】:

  • 是的!它就像一个魅力!这正是我想做的,但我不知道你可以在“.find()”中放置一个函数,我很高兴发现缩短的函数(箭头函数),我不知道“.find()”。包括()”方法。所以我今天学到了很多!非常感谢。
猜你喜欢
  • 1970-01-01
  • 2012-11-20
  • 1970-01-01
  • 1970-01-01
  • 2017-05-01
  • 2014-12-16
  • 1970-01-01
  • 2020-04-19
相关资源
最近更新 更多