Javascript从嵌套数组中删除数组

Javascript从嵌套数组中删除数组,javascript,arrays,Javascript,Arrays,我在localStorage中有一个嵌套数组 arr = [["STAR_SPORTS_2-20170924-200043-210917-00142.jpg", "TShirt", "Redshift", 267, 403, 377, 389, 385, 479, 275, 493], ["STAR_SPORTS_2-20170924-200043-210917-00142.jpg", "TShirt", "Redshift", 317, 319, 428, 325, 426,

我在localStorage中有一个嵌套数组

arr = [["STAR_SPORTS_2-20170924-200043-210917-00142.jpg", "TShirt", "Redshift", 267, 403, 377, 389, 385, 479, 275, 493], 
       ["STAR_SPORTS_2-20170924-200043-210917-00142.jpg", "TShirt", "Redshift", 317, 319, 428, 325, 426, 372, 315, 366],
       ["STAR_SPORTS_2-20170924-200043-210917-00142.jpg", "TShirt", "Redshift", 425, 490, 539, 425, 526, 472, 215, 478]]
基于两点条件,我想删除一个特定的数组并将其存储回localStorage

var a = 267;
var b = 403;

for (var i = 0; i < arr.length; i++) {
    if (arr[i][0] === "STAR_SPORTS_2-20170924-200043-210917-00142.jpg") {
      first.x = arr[i][3];
      first.y = arr[i][4]; 
      second.x = arr[i][5]; 
      second.y = arr[i][6]; 
      third.x = arr[i][7]; 
      third.y = arr[i][8]; 
      fourth.x = arr[i][9]; 
      fourth.y = arr[i][10]; 
      if (a === first.x && b === first.y) {
        arr[i].splice(0,11);
        var newArray = new Array();
        newArray = arr;
        var nar = newArray.filter(function(x) { return (x !== (undefined || null || ''));})
        localStorage.setItem('nar',JSON.stringify(arr));
      }
    }
  }

这是我认为最简单的方式(如果我没有错的话)

arr=[[“STAR_SPORTS_2-20170924-200043-210917-00142.jpg”,“TShirt”,“Redshift”,267,403,377,389,385,479,275,493],
[“STAR_SPORTS_2-20170924-200043-210917-00142.jpg”,“T恤”,“红移”,317,319,428,325,426,372,315,366],
[“STAR_SPORTS_2-20170924-200043-210917-00142.jpg”,“T恤”,“红移”,425,490,539,425,526,472,215,478]]
var newArray=[];
arr.forEach(功能(d){
如果(d[0]=“STAR_SPORTS_2-20170924-200043-210917-00142.jpg”&&d[3]!=267&&d[4]!=403){newArray.push(d);}
});
//setItem('nar',JSON.stringify(newArray));

log(newArray)可能的重复(我不能说是不是所有的错误。但是
(x!==(未定义的| | | null | | | |“”)
肯定是可疑的)你能拨弄一下吗?我认为您希望从数组匹配项a和b中删除数据。将平衡数组存储到localstorage就是你说的:)@user202729我是一个试图学习和使用javascript构建应用程序的初学者……我不明白为什么我的问题是重复的。你能看到
(x!==(未定义的| | null | | |“”)
有什么问题吗?(参见上面链接的可能的副本)您能自己修复吗?
for (var i = 0; i < arr.length; i++) {
    if (arr[i][0] === "STAR_SPORTS_2-20170924-200043-210917-00142.jpg") {
      first.x = arr[i][3];
      first.y = arr[i][4]; 
      second.x = arr[i][5]; 
      second.y = arr[i][6]; 
      third.x = arr[i][7]; 
      third.y = arr[i][8]; 
      fourth.x = arr[i][9]; 
      fourth.y = arr[i][10]; 
      if (a === first.x && b === first.y) {
        arr[i].splice(0,11);
        var newArray = new Array();
        arr.forEach(function(item) {
          newArray.push(item);
        })
        localStorage.setItem('nar',JSON.stringify(newArray));
      }
    }
  }