hasOwnProperty()方法,另一个是in关键字。如果我们有一个users对象,它有一个Alan属性,我们可以用以下两种方式之一来检查该属性在对象中是否存在:
```js
users.hasOwnProperty('Alan');
'Alan' in users;
// 都返回 true
```
users对象和一个isEveryoneHere函数,该函数接受users对象作为参数。请完成该函数使其在users对象中包含以下 4 个键Alan、Jeff、Sarah和Ryan时才返回true,否则返回false。
users对象应该只含有Alan、Jeff、Sarah和Ryan4 个键。
testString: assert("Alan" in users && "Jeff" in users && "Sarah" in users && "Ryan" in users && Object.keys(users).length === 4);
- text: isEveryoneHere函数在users对象包含Alan、Jeff、Sarah和Ryan4 个键时应该返回true。
testString: assert(isEveryoneHere(users) === true);
- text: isEveryoneHere函数在users对象不包含Alan、Jeff、Sarah或Ryan4 个键时应该返回false。
testString: assert((function() { delete users.Alan; return isEveryoneHere(users) })() === false);
- text: 如果 Jeff 不是 users 对象的属性,函数 isEveryoneHere 应该返回 false。
testString: assert((function() { delete users.Jeff; return isEveryoneHere(users) })() === false);
- text: 如果 Sarah 不是 users 对象的属性,函数 isEveryoneHere 应该返回 false。
testString: assert((function() { delete users.Sarah; return isEveryoneHere(users) })() === false);
- text: 如果 Ryan 不是 users 对象的属性,函数 isEveryoneHere 应该返回 false。
testString: assert((function() { delete users.Ryan; return isEveryoneHere(users) })() === false);
```