function isObject(val) { return val != null && typeof val === 'object' && Array.isArray(val) === false;};TrueAll of the following return true:isObject({});isObject(Object.create({}));isObject(Object.create(Object.prototype));isObject(Object.create(null));isObject({});isObject(new Foo);isObject(/foo/);FalseAll of the following return false:isObject();isObject(function () {});isObject(1);isObject([]);isObject(undefined);isObject(null);
if (!Array.isArray) { Array.isArray = function(arg) { return Object.prototype.toString.call(arg) === '[object Array]'; };}var arr = new xArray(1,2,3); // [1,2,3]Array.isArray(arr); // true