List intersections

by russau

HTML

<script src=" //cdnjs.cloudflare.com/ajax/libs/underscore.js/1.7.0/underscore-min.js"></script>
List 1
<textarea id="list1" rows=15>[email protected]
[email protected]
[email protected]</textarea>
<hr/>List 2
<textarea id="list2" rows=15>[email protected]</textarea>
<br>
<button id='btnGo'>Go</button>

JavaScript

$('#btnGo').click(function () {
    var list1 = $('#list1').val().trim().toLowerCase().split('\n').map(function(s) {
        return s.trim();
    });
    var list2 = $('#list2').val().trim().toLowerCase().split('\n').map(function(s) {
        return s.trim();
    });

    var list1_only = _.difference(list1, list2);
    var both_lists = _.intersection(list1, list2);
    var list2_only = _.difference(list2, list1);
    var combined_lists = _.union(list2, list1);

    $('body').append("<h1>List 1 Only</h1>");
    $.each(list1_only, function() {
        $('body').append(this +"; ");
    });
    
    $('body').append("<h1>Both Lists</h1>");
    $.each(both_lists, function() {
        $('body').append(this +"; ");
    });

    $('body').append("<h1>List 2 only</h1>");
    $.each(list2_only, function() {
        $('body').append(this +"; ");
    });

    $('body').append("<h1>Combined Lists</h1>");
    $.each(combined_lists, function() {
        $('body').append(this +"; ");
    });
    
    //alert(list1_only);
});