Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 创建数组并排除以以下结尾的对象:_Javascript_Node.js - Fatal编程技术网

Javascript 创建数组并排除以以下结尾的对象:

Javascript 创建数组并排除以以下结尾的对象:,javascript,node.js,Javascript,Node.js,我要筛选以下数组,以便删除以结尾的所有对象:。是否有一种简单的方法来实现这一点,例如在已经存在的过滤器中实现 var ingredientsArray = ingredients.replace(/<strong>[\s\S]*?<\/strong>/g, '').split('<br>').map(it => it.trim()).filter(it => !!it) 然后我想用:过滤出对象 ["1 lime", "2 lemons"] 您可

我要筛选以下数组,以便删除以
结尾的所有对象:
。是否有一种简单的方法来实现这一点,例如在已经存在的过滤器中实现

var ingredientsArray = ingredients.replace(/<strong>[\s\S]*?<\/strong>/g, '').split('<br>').map(it => it.trim()).filter(it => !!it)
然后我想用
过滤出对象

["1 lime", "2 lemons"]
您可以使用:

["fruits:", "1 lime", "2 lemons"].filter(x => !x.endsWith(':'))
您可以使用:

["fruits:", "1 lime", "2 lemons"].filter(x => !x.endsWith(':'))

如果您仅使用ES5,请尝试以下方法:

var ingredientsArray = ingredients.replace(/<strong>[\s\S]*?<\/strong>/g, '').split('<br>')

var filteredArray = ingredientsArray.reduce(function(acc, item) {
  item = item.trim()
  if (item) {
    if (item[item.length - 1] !== ':') {
      acc.push(item)
    }
  }

  return acc
}, [])

如果您仅使用ES5,请尝试以下方法:

var ingredientsArray = ingredients.replace(/<strong>[\s\S]*?<\/strong>/g, '').split('<br>')

var filteredArray = ingredientsArray.reduce(function(acc, item) {
  item = item.trim()
  if (item) {
    if (item[item.length - 1] !== ':') {
      acc.push(item)
    }
  }

  return acc
}, [])

阵列在哪里?你能用“我现在添加了一些东西”创建一个代码段吗?为什么不将条件添加到map或filter语句中?@PeterPik你觉得有什么有用的答案吗?数组在哪里?你能用“我现在添加了一些东西”创建一个代码段吗?为什么不将条件添加到映射或筛选语句中?@PeterPik你觉得有什么有用的答案吗?