aboutsummaryrefslogtreecommitdiff
path: root/node_modules/object.pick/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/object.pick/index.js')
-rw-r--r--node_modules/object.pick/index.js35
1 files changed, 35 insertions, 0 deletions
diff --git a/node_modules/object.pick/index.js b/node_modules/object.pick/index.js
new file mode 100644
index 0000000..0ce0178
--- /dev/null
+++ b/node_modules/object.pick/index.js
@@ -0,0 +1,35 @@
+/*!
+ * 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;
+};