javascript - JavaScript - 过滤字符串数组
问题描述
我有一组从 csv 文件返回给我的数据数组。我试图根据数组中的标题过滤掉数组的每个索引。例如:
如果数组的索引具有名称“零售”,则返回包含一些值的整个索引。
这是我的数组:
[
[
"Retail",
"22,477",
"24,549",
"19,580",
"15,358",
],
[
"Online",
"8,653",
"7,586",
"2,432",
"4,321"
],
[
"In Store",
"2,532",
"2,836",
"5,632",
"7,325"
]
]
我尝试了这两种不同的方式,并且都返回了一个 0 数组:
filtArr = dataList.filter(name => name.includes('Retail')) //expecting the array length 5 with "Retail" and it's values
尝试 2
filtArr = dataList.filter(function (name) {
return (name === "Retail")
})
预期回报为:console.log(filtArr) // [ 0. "Retail", 1. "22,477", 2. "24,549", 3. "19,580", 4. "15,358"
解决方案
检查数组是否包含某些项目的一个好方法是使用 indexOf 方法对其进行测试。如果未找到该项目或它的索引,它将返回 -1。
您可以这样做来存储所有包含“零售”的数组:
let retailArrays = [];
arrayOfArrays.forEach(
array => {
if( array.indexOf('Retail') !== -1) {
retailArrays.push(array);
};
}
)
推荐阅读
- postgresql - 在 Postgresql 中使用 IF 语句更新表
- google-text-to-speech - “en-US-Wavenet-H”和“en-US-Wavenet-G”不流畅[Google Cloud Text to Speech]
- csv - 如何将多个数据文件 (.csv) 添加到 Power BI?
- python - 如何使用 kwargs 在 Django 中更新模型
- c++ - 如何在从用户输入中读取多个数字时忽略 C++ 中整数数组中的空白间距
- android - 如何避免android中Flash文件的循环
- database - Golang 中的 Mongodb Arrayfilter 查询进行更新操作
- java - 填充滚动视图时,EditText 在片段中自动设置为不可编辑
- c# - Xamarin 形成 Combobox:SFComboBox!! 我如何刷新我的组合框?
- javascript - 在 Woocommerce Checkout 登录后创建重定向到自定义 URL