123456789101112131415161718192021222324252627282930313233343536373839404142 |
- var _hasOwnProperty = Object.prototype.hasOwnProperty;
- var _propertyIsEnumerable = Object.prototype.propertyIsEnumerable;
- function hasOwnProperty(obj, key) {
- return _hasOwnProperty.call(obj, key);
- }
- function propertyIsEnumerable(obj, key) {
- return _propertyIsEnumerable.call(obj, key);
- }
- function merge(a, b) {
- if (a && b) {
- for (var key in b) {
- a[key] = b[key];
- }
- }
- return a;
- }
- function isIterator(obj) {
- if (!obj) {
- return false;
- }
- if (obj.__shouldIterator__) {
- return true;
- }
- return typeof obj.next === 'function' &&
- typeof Symbol === 'function' &&
- typeof Symbol.iterator === 'symbol' &&
- typeof obj[Symbol.iterator] === 'function' &&
- obj[Symbol.iterator]() === obj;
- }
- //TODO find better way
- function isGeneratorFunction(f) {
- return typeof f === 'function' && /^function\s*\*\s*/.test(f.toString());
- }
- export { hasOwnProperty, propertyIsEnumerable, merge, isIterator, isGeneratorFunction };
|