diff options
Diffstat (limited to 'node_modules/es5-ext/object/is-array-like.js')
-rw-r--r-- | node_modules/es5-ext/object/is-array-like.js | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/node_modules/es5-ext/object/is-array-like.js b/node_modules/es5-ext/object/is-array-like.js new file mode 100644 index 000000000..8e53500c4 --- /dev/null +++ b/node_modules/es5-ext/object/is-array-like.js @@ -0,0 +1,18 @@ +"use strict"; + +var isFunction = require("../function/is-function") + , isObject = require("./is-object") + , isValue = require("./is-value"); + +module.exports = function (value) { + return ( + (isValue(value) && + typeof value.length === "number" && + // Just checking ((typeof x === 'object') && (typeof x !== 'function')) + // won't work right for some cases, e.g.: + // type of instance of NodeList in Safari is a 'function' + + ((isObject(value) && !isFunction(value)) || typeof value === "string")) || + false + ); +}; |