Блок предоставляет объект, содержащий набор методов для работы с объектами JavaScript.
Имя | Тип возвращаемого значения | Описание |
---|---|---|
extend(target {Object} , source {Object} ) |
Object |
Расширяет объект свойствами другого объекта. |
isEmpty(obj {Object} ) |
Boolean |
Позволяет выяснить пуст ли переданный объект. |
each(obj {Object} , fn {Function} , [ctx {Object}] ) |
- | Итеративно обходит собственные свойства объекта. |
Блок реализован в технологиях:
vanilla.js
extend
Расширяет объект свойствами другого объекта. Копируются только собственные свойства, не полученные по цепочке прототипов.
Принимаемые аргументы:
target {Object}
– целевой объект. Обязательный аргумент.source {Object}
– объект, свойства которого добавляются к целевому. Может быть передано несколько объектов. Свойства каждого из них будут добавлены к целевому. Обязательный аргумент.Возвращаемое значение: Object
. Целевой объект с добавленными свойствами.
Пример:
modules.require(['objects'], function(objects) {
var obj1 = { a : 1, b : 2 },
obj2 = { b : 3, c : 4 };
console.log(objects.extend(obj1, obj2)); // { a : 1, b : 3, c : 4 }
});
isEmpty
Позволяет выяснить пуст ли переданный объект. Другими словами, имеет ли объект собственные свойства.
Принимаемые аргументы:
obj {Object}
– объект для проверки. Обязательный аргумент.Возвращаемое значение: Boolean
. В случае, если объект не имеет собственных свойств – true
.
Пример:
modules.require(['objects'], function(objects) {
var obj1 = {},
obj2 = { foo : 'bar' };
console.log(objects.isEmpty(obj1)); // true
console.log(objects.isEmpty(obj2)); // false
});
each
Служит для итерации по собственным свойствам объекта. Для каждого собственного свойства вызывается функция-обработчик.
Принимаемые аргументы:
obj {Object}
– объект, обход свойств которого производится. Обязательный аргумент.fn {Function}
– функция-обработчик, вызываемая для каждого свойства. Обязательный аргумент.ctx {Object}
] – контекст обработчика.Не имеет возвращаемого значения.
Функция-обработчик получает в качестве аргументов значение и ключ свойства объекта, для которого была вызвана.
Пример:
modules.require(['objects'], function(objects) {
objects.each(
{ a : 1, b : 2 },
function(val, key) {
console.log(key, val);
});
// a 1
// b 2
});