Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
['one','two','three'].map('length'); // => [3,3,5]
По-моему, это просто глупо, когда апологеты JS разводят понты про протоипную модель,
// Sugar.js
Object.merge(target , source, deep = false, resolve = true)
// MooTools
Object.merge(obj1, obj2[, obj3[, ...]])
они не стали выносить методы в прототипы нативных объектов js
var characters = [
{ 'name': 'barney', 'age': 36 },
{ 'name': 'fred', 'age': 40 },
{ 'name': 'pebbles', 'age': 1 }
];
var youngest = _(characters)
.sortBy('age')
.map(function(chr) { return chr.name + ' is ' + chr.age; })
.first()
.value();
>>> 'ab' > 'aa';
true
>>> _.max('aa', 'ab');
-Infinity
из документации не очевидно, почему именно такой результат. тем не менее, разработчики underscore считают это поведение правильным.>>> _.reduce(['aa', 'ab'], function(a, b){ return a > b ? a : b; });
'ab'
lodash (underscore) — знай свою стандартную библиотеку