在JavaScript中,你可以使用Object.keys()方法来获取对象的所有键(属性名),然后判断这个数组的长度是否为1,并且对象的值不为空。以下是一个函数示例,它检查一个对象是否只有一个属性,并且这个属性的值不为空:
function hasOnlyOneNonEmptyProperty(obj) { // 获取对象的所有键 const keys = Object.keys(obj); // 检查键的数量是否为1 if (keys.length === 1) { // 检查这个唯一的键对应的值是否不为空 const value = obj[keys[0]]; return value !== null && value !== undefined && value !== ''; } // 如果不是只有一个属性,或者值为空,返回false return false; } // 示例 const obj1 = { a: 'value' }; // 只有一个属性,值不为空 const obj2 = { a: '' }; // 只有一个属性,但值为空 const obj3 = { a: 'value', b: 'value' }; // 有两个属性 console.log(hasOnlyOneNonEmptyProperty(obj1)); // true console.log(hasOnlyOneNonEmptyProperty(obj2)); // false console.log(hasOnlyOneNonEmptyProperty(obj3)); // false
这个函数首先检查对象是否只有一个键,如果是,然后检查这个键对应的值是否不为空(不是null、undefined或空字符串)。如果这两个条件都满足,函数返回true,否则返回false。
网友回复
如何编写一个chrome插件实现多线程高速下载大文件?
cdn版本的vue在网页中出现typeerror错误无法找到错误代码位置怎么办?
pywebview能否使用webrtc远程控制共享桌面和摄像头?
pywebview6.0如何让窗体接受拖拽文件获取真实的文件路径?
如何在linux系统中同时能安装运行apk的安卓应用?
python有没有离线验证码识别ocr库?
各家的ai图生视频及文生视频的api价格谁最便宜?
openai、gemini、qwen3-vl、Doubao-Seed-1.6在ui截图视觉定位这款哪家更强更准?
如何在linux上创建一个沙箱隔离的目录让python使用?
pywebview如何使用浏览器自带语音识别与webspeech 的api?