/**
* @param {Object | Array} obj
* @return {boolean}
*/
var isEmpty = function(obj) {
};
2727. 判断对象是否为空
给定一个对象或数组,判断它是否为空。
你可以假设对象或数组是通过 JSON.parse
解析得到的。
示例 1:
输入:obj = {"x": 5, "y": 42} 输出:false 解释:The object has 2 key-value pairs so it is not empty.
示例 2:
输入:obj = {} 输出:true 解释:The object doesn't have any key-value pairs so it is empty.
示例 3:
输入:obj = [null, false, 0] 输出:false 解释:The array has 3 elements so it is not empty.
提示:
2 <= JSON.stringify(obj).length <= 105
你可以在 O(1) 时间复杂度内解决这个问题吗?
原站题解
javascript 解法, 执行用时: 60 ms, 内存消耗: 41.5 MB, 提交时间: 2023-06-10 19:23:54
/** * @param {Object | Array} obj * @return {boolean} */ var isEmpty = function(obj) { return Array.isArray(obj) ? (obj.length ? false : true) : (Object.keys(obj).length ? false : true); };
javascript 解法, 执行用时: 60 ms, 内存消耗: 41.5 MB, 提交时间: 2023-06-10 19:23:22
/** * @param {Object | Array} obj * @return {boolean} */ var isEmpty = function(obj) { return Object.keys(obj).length === 0; };
typescript 解法, 执行用时: 52 ms, 内存消耗: 44.2 MB, 提交时间: 2023-06-10 19:22:59
function isEmpty(obj: Record<string, any> | any[]): boolean { for (let i in obj) { return false } return true };
typescript 解法, 执行用时: 68 ms, 内存消耗: 44.2 MB, 提交时间: 2023-06-10 19:22:40
function isEmpty(obj: Record<string, any> | any[]): boolean { return Object.keys(obj).length == 0 };