Underscore Conflict Test
by paulftw
HTML
<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.5.0/underscore.js"></script>
JavaScript
var gettext = function(s) {
var res = '';
for (var i = 0; i < s.length; i++) {
res += i%2 ? s[i].toLowerCase() : s[i].toUpperCase();
}
return res;
};
(function(underscore, gettext) {
var zcombinator = function(obj) {
if (typeof obj == "string") {
return gettext(obj);
} else {
return underscore(obj);
}
};
underscore.extend(zcombinator, underscore);
window._ = zcombinator;
})(_, gettext);
console.log('Must print noisy-case: ',
_('Text Translated to Greek')
);
console.log('List of squares',
_.map([1, 2, 3, 4, 5], function(x) {return x*x;})
);
console.log('More squares: ',
_([1,2,3,4,5]).map(function(x) {return x*x;})
);