25 lines
		
	
	
		
			532 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			532 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 'use strict';
 | |
| 
 | |
| module.exports = {
 | |
|   isObject: function(obj) {
 | |
|     var type = typeof obj;
 | |
|     return type === 'function' || type === 'object' && !!obj;
 | |
|   }
 | |
| 
 | |
| , extend: function(obj) {
 | |
|     if (!this.isObject(obj)) {
 | |
|       return obj;
 | |
|     }
 | |
|     var source, prop;
 | |
|     for (var i = 1, length = arguments.length; i < length; i++) {
 | |
|       source = arguments[i];
 | |
|       for (prop in source) {
 | |
|         if (Object.prototype.hasOwnProperty.call(source, prop)) {
 | |
|           obj[prop] = source[prop];
 | |
|         }
 | |
|       }
 | |
|     }
 | |
|     return obj;
 | |
|   }
 | |
| };
 |