javascriptx
Version:
javascript 基础库扩展
46 lines (36 loc) • 1.32 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
// Object
// 判断对象是否为空,except为除外的属性, except为数组,支持字符串与正则匹配
var isEmpty = function isEmpty(object) {
var except = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
if (!object) {
return true;
}
var _loop = function _loop(key) {
if (except && except.some(function (ex) {
return typeof ex === 'string' ? ex === key : ex.test(key);
})) {
return 'continue';
}
if (object.hasOwnProperty(key)) {
return {
v: false
};
}
};
for (var key in object) {
var _ret = _loop(key);
switch (_ret) {
case 'continue':
continue;
default:
if ((typeof _ret === 'undefined' ? 'undefined' : _typeof(_ret)) === "object") return _ret.v;
}
}
return true;
};
exports.default = isEmpty;