text: var _ = {
      nativeForEach: Array.prototype.forEach,
      each: function(obj, iterator, context) {
          if (obj == null) return obj;
          if (this.nativeForEach && obj.forEach === this.nativeForEach) {
              obj.forEach(iterator, context);
          } else if (obj.length === +obj.length) {
              for (var i = 0, length = obj.length; i < length; i++) {
                  if (iterator.call(context, obj[i], i, obj) === breaker) return;
              }
          } else {
              var keys = _.keys(obj);
              for (var i = 0, length = keys.length; i < length; i++) {
                  if (iterator.call(context, obj[keys[i]], keys[i], obj) === breaker) return;
              }
          }
          return obj;
      },
      slice: Array.prototype.slice,
      extend: function(obj) {
          this.each(this.slice.call(arguments, 1), function(source) {
              if (source) {
                  for (var prop in source) {
                      obj[prop] = source[prop];
                  }
              }
          });
          return obj;
      }
  };