对象中是否有某一个属性 in

简介: 对象中是否有某一个属性 in

参考地址:https://blog.csdn.net/qq_42363090/article/details/103716526


如何看某个对象中没有某一个属性


如果我们要检测对象是否拥有某一属性,可以用in操作符


var obj= {
    name: '类老师',
    age: 18,
    school: '家具'  
};
console.log('age' in obj); // true
console.log('grade' in obj); // false


在vue中的实际应用,通过判断是否有某一个属性,是否展示出这个标签。
<h2 class="tab-meassage-timeweek" v-if=" 'weekunkown' in  item==true? true : false ">{{item.weekunkown}}</h2>


疑惑的地方
let xiaoming={};
console.log('Function' in xiaoming);//为false
console.log('toString' in xiaoming);//为什这里是true了  不是也应该是false吗
看了下面这张图,你就知道了,因为继承啊


1425695-20200219231918679-593113997.png


// 因为toString定义在object对象中,而所有对象最终都会在原型链上指向object,所以obj也拥有toString属性。
// 要判断一个属性是否是obj自身拥有的,而不是继承得到的,可以用hasOwnProperty()[has er en po per t]方法:
var obj= {    
    name: '陈三',    
    age: 18,    
    school: '宇宙银河系'  
};
obj.hasOwnProperty('name'); // true
obj.hasOwnProperty('toString'); // false
相关文章
|
7月前
|
JavaScript 前端开发
如何删除对象中的属性?如何想对象中添加属性?
如何删除对象中的属性?如何想对象中添加属性?
67 0
|
2月前
bgcolor属性
【10月更文挑战第7天】bgcolor属性。
19 2
|
4月前
|
存储 安全 编译器
C#中的属性
C#中的属性
49 7
|
6月前
|
编译器 程序员 C++
C++一分钟之-属性(attributed)与属性语法
【6月更文挑战第28天】C++的属性为代码添加元数据,帮助编译器理解意图。C++11引入属性语法`[[attribute]]`,但支持取决于编译器。常见属性如`nodiscard`提示检查返回值,`maybe_unused`防止未使用警告。问题包括兼容性、过度依赖和误用。使用属性时需谨慎,确保团队共识,适时更新以适应C++新特性。通过示例展示了`nodiscard`和`likely/unlikely`的用法,强调正确使用属性能提升代码质量和性能。
91 13
|
7月前
|
测试技术
反射获取或修改对象属性的值
* 获取单个对象的所有键值对
56 3
|
6月前
|
XML JavaScript 前端开发
nodeType 属性
XML DOM中的每个节点都是对象,具有方法和属性,可通过JavaScript处理。关键属性包括:nodeName、nodeValue和nodeType。nodeType是只读的,用于标识节点类型,如:元素(1)、属性(2)、文本(3)、注释(8)和文档(9)。
|
JavaScript 前端开发
添加新属性
添加新属性
88 0
|
存储 JavaScript 前端开发
访问对象的属性,你知道有哪些方法?
相信对象对于每个使用JavaScript的人来说都不陌生。访问对象的属性几乎日常开发每天都在用。下面我们一起探索下有哪些方式可以实现属性的访问。
204 0
|
JSON JavaScript 前端开发
18、属性描述对象
JavaScript 提供了一个内部数据结构,用来描述对象的属性,控制它的行为,比如该属性是否可写、可遍历等等。这个内部数据结构称为“属性描述对象”(attributes object)。
181 0