开发者社区 问答 正文

js 两个数组相减

var arr1 = ["", "100", "120", "125", "125", "130", "130"];

var arr2 = ["", "120", "125", "125", "130"];

请问如何求得两个数组之差?使得新数组为 arr3 = ["100","130"]

或则转化为处理两个字符串的问题:
var p1 = 100, 120, 125, 125, 130, 130;
var p2 = 120, 125, 125, 130;

求得两个字符串之差?使得新字符串为 p3 = 100,130;

补充: 要求根据元素(字符)个数相减

展开
收起
a123456678 2016-03-11 16:45:46 4051 分享 版权
1 条回答
写回答
取消 提交回答
  • var arr1 = ["", "120", "125", "125", "130", "130", "130", "130", "130"];
    
    var arr2 = ["", "120", "125", "130"];
    
    for (var i = arr1.length - 1; i >= 0; i--) {
        a = arr1[i];
        for (var j = arr2.length - 1; j >= 0; j--) {
            b = arr2[j];
            if (a == b) {
                arr1.splice(i, 1);
                arr2.splice(j, 1);
                break;
            }
        }
    }
    
    console.log(arr1);  // ["125","130","130","130","130"]
    2019-07-17 18:59:37
    赞同 展开评论
问答分类:
问答标签:
问答地址: