| /*! |
| * object.pick <https://github.com/jonschlinkert/object.pick> |
| * |
| * Copyright (c) 2014-2015 Jon Schlinkert, contributors. |
| * Licensed under the MIT License |
| */ |
| |
| 'use strict'; |
| |
| var isObject = require('isobject'); |
| |
| module.exports = function pick(obj, keys) { |
| if (!isObject(obj) && typeof obj !== 'function') { |
| return {}; |
| } |
| |
| var res = {}; |
| if (typeof keys === 'string') { |
| if (keys in obj) { |
| res[keys] = obj[keys]; |
| } |
| return res; |
| } |
| |
| var len = keys.length; |
| var idx = -1; |
| |
| while (++idx < len) { |
| var key = keys[idx]; |
| if (key in obj) { |
| res[key] = obj[key]; |
| } |
| } |
| return res; |
| }; |