EN RU
Форум

Методология

Технологии

Инструментарий

Библиотеки

Учебные материалы

DocumentationJSDocSource

objects

Блок предоставляет объект, содержащий набор методов для работы с объектами JavaScript.

Обзор

Свойства и методы объекта

Имя Возвращаемое значение Описание
extend(
{Object} target,
{Object} source)
{Object} Расширяет объект свойствами другого объекта.
isEmpty({Object} obj) {Boolean} Позволяет выяснить пуст ли переданный объект.
each(
{Object} obj,
{Function} fn,
[{Object} ctx])
- Итеративно обходит собственные свойства объекта.

Публичные технологии блока

Блок реализован в технологиях:

  • 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
});

Module objects

A set of helpers to work with JavaScript objects

Object methods:

extend(target, source):Object
description
Extends a given target by
parameters
target
Object
object to extend
source
Object
isEmpty(obj):Boolean
description
Check whether a given object is empty (contains no enumerable properties)
parameters
obj
Object
each(obj, fn, [ctx])
description
Generic iterator function over object
parameters
obj
Object
object to iterate
fn
Function
callback
ctx
Object
callbacks's context