两种方法比较两个字符串的不同


输入:你好啊,我是JavaScript,请问你是谁?
输入:你好,我是java,很高兴认识你!
输出:啊JScript请问谁? j很高兴认识!

方法一:

var sr1='你好啊,我是JavaScript,请问你是谁?';
var sr2='你好,我是java,很高兴认识你!';
var sr3='';
var sr4='';
for(var i=0;i<sr1.length;i++){
    var flag=true;
    for(var j=0;j<sr2.length;j++){
        if(sr1[i]==sr2[j]){
            flag=false;
            break;
        }  
    }
    if(flag) sr3+=sr1[i];
}
for(var i=0;i<sr2.length;i++){
    var flag=true;
    for(var j=0;j<sr1.length;j++){
        if(sr2[i]==sr1[j]){
            flag=false;
            break;
        }  
    }
    if(flag) sr4+=sr2[i];
}
console.log(sr3,sr4);
View Code

方法二:

//取出两个数组的不同元素
getArrDifference = function (arr1, arr2) {

    return arr1.concat(arr2).filter(function (v, i, arr) {

        return arr.indexOf(v) === arr.lastIndexOf(v);

    });

}
var a="你好啊,我是JavaScript,请问你是谁?";
var b="你好,我是java,很高兴认识你!";
var arrA=a.split("");
var arrB=b.split("");
var res=getArrDifference(arrA,arrB);
console.log(res.join(""));
View Code
原文地址:https://www.cnblogs.com/hofmann/p/10783429.html