Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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 使用OR运算符对数组中的值求反_Javascript_Arrays - Fatal编程技术网

Javascript 使用OR运算符对数组中的值求反

Javascript 使用OR运算符对数组中的值求反,javascript,arrays,Javascript,Arrays,这是一个非常简单的问题,但我还不能完全理解。 我有一个包含n个页面名的页面数组,我想运行一个循环,其中包含一些未包含的页面名 var arr = ["page-name", "page-name-two", 'page-3', 'some-more', 'another-page']; for (var page in arr) { if (arr[page] !== "page-name" || arr[page] !== "some-more") { consol

这是一个非常简单的问题,但我还不能完全理解。 我有一个包含n个页面名的页面数组,我想运行一个循环,其中包含一些未包含的页面名

var arr = ["page-name", "page-name-two", 'page-3', 'some-more', 'another-page']; 
for (var page in arr) {
     if (arr[page] !== "page-name" || arr[page] !== "some-more") {
        console.log(arr[page])
     }
 }
现在我想要的结果是:

page-name-two
page-3
another-page
我做错了什么?

拿着,而不是拿着

请使用
for
循环,使用变量作为索引,而不是对象的键

资料来源:

var arr=[“页面名称”、“页面名称二”、“第三页”、“更多”、“另一页];
对于(变量i=0;i}
您应该使用
.filter()
从第一个数组中筛选值,然后对结果数组执行您想要执行的任何操作。这将避免您编写大量
/
条件,以防您需要过滤更多值

让arr1=[“页面名称”、“页面名称二”、“第三页”、“更多”、“另一页”],
arr2=[“页面名称”,“更多”];
让结果=arr1.filter=>!arr2.includes(s));

控制台日志(结果)我将存储要删除的值,然后在所有页面名称列表上运行Array.filter以查找匹配项。如果名称匹配,请将其从最终数组中删除

// This can be a array of whatever strings you're looking to eliminate from the array
const valuesToFilter = ['page-name', 'some-more'];

// Your original array
const arr = ["page-name", "page-name-two", 'page-3', 'some-more', 'another-page']; 

// Use Array.filter to eliminate anything that doesn't pass the filter test
const filteredArr = arr.filter(page => {
  let foundMatch = false;

  valuesToFilter.forEach(value => {
    if (page === value) {
      foundMatch = true;
    }
  })

  if (!foundMatch) return page;
});

console.log(filteredArr);