我是angularjs的新手。
我需要比较两个字符串,并使用angularjs打印两个字符串中的常用字。
我的angularjs代码是:
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.names = [
{name1: 'aaaa',name2: 'aaaa'},
{name1: 'abc',name2: 'abcde'},
{name1: 'aabbcc',name2: 'aabbdd'}
];
});
HTML:
<table>
<tr ng-repeat="x in names ">
<td>{{x.name1}}</td>
<td>{{x.name2}}</td>
<td ng-if='x.name1 == x.name2'>{{x.name1}}</td>
<td ng-if='x.name1 != x.name2'><!--Output--></td>
</tr>
</table>
预期产出:
name1 name2 output
aaaa aaaa aaaa
abc abcde abc
aabbcc aabbdd aabb
我已经使用ng-if作为第一集。然后如何处理剩余的值集?这是否可以单独使用angularjs?
答案 0 :(得分:0)
看看这个香草js代码:
function getIntersection(s1, s2) {
var result = '', i, map = {};
for (i = 0; i < s1.length; i++)
map[s1[i]] = (map[s1[i]] || 0) + 1;
for (i = 0; i < s2.length; i++)
map[s2[i]] = (map[s2[i]] || 0) + 1;
for (var key in map)
if (map[key] > 1)
result += key;
return result;
}
我已将其集成到角度,使用自定义过滤器: