Rework _.intersection.

Former-commit-id: b05442888b15b448f6594b46b5cf1a2a06611da2
This commit is contained in:
John-David Dalton
2012-10-20 19:10:56 -07:00
parent a0c91b8754
commit 850d55ab45
4 changed files with 73 additions and 69 deletions

View File

@@ -1092,20 +1092,22 @@
// replace `_.intersection`
source = source.replace(/^( +)function intersection[\s\S]+?\n\1}/m, [
' function intersection(array) {',
' var args = argument,',
' argsLength = args.length;',
' var args = arguments,',
' argsLength = args.length,',
' result = [];',
'',
' return filter(array, function(value) {',
' forEach(array, function(value) {',
' if (indexOf(result, value) < 0) {',
' var length = argsLength;',
' while (--length) {',
' if (indexOf(args[length], value) < 0) {',
' return false;',
' return;',
' }',
' }',
' return true;',
' result.push(value);',
' }',
' });',
' return result;',
' }'
].join('\n'));