85 lines
2.3 KiB
Markdown
85 lines
2.3 KiB
Markdown
|
---
|
||
|
id: 567af2437cbaa8c51670a16c
|
||
|
title: Testing Objects for Properties
|
||
|
localeTitle: Prueba de objetos para propiedades
|
||
|
challengeType: 1
|
||
|
---
|
||
|
|
||
|
## Description
|
||
|
<section id='description'>
|
||
|
A veces es útil verificar si la propiedad de un objeto dado existe o no. Podemos usar el método de objetos <code>.hasOwnProperty(propname)</code> para determinar si ese objeto tiene el nombre de propiedad dado. <code>.hasOwnProperty()</code> devuelve <code>true</code> o <code>false</code> si se encuentra la propiedad o no.
|
||
|
<strong>Ejemplo</strong>
|
||
|
<blockquote>var myObj = {<br> top: "hat",<br> bottom: "pants"<br>};<br>myObj.hasOwnProperty("top"); // true<br>myObj.hasOwnProperty("middle"); // false</blockquote>
|
||
|
</section>
|
||
|
|
||
|
## Instructions
|
||
|
<section id='instructions'>
|
||
|
Modifique la función <code>checkObj</code> para probar <code>myObj</code> para <code>checkProp</code> . Si se encuentra la propiedad, devuelva el valor de esa propiedad. Si no, devuelve <code>"Not Found"</code> .
|
||
|
</section>
|
||
|
|
||
|
## Tests
|
||
|
<section id='tests'>
|
||
|
|
||
|
```yml
|
||
|
tests:
|
||
|
- text: <code>checkObj("gift")</code> debe devolver <code>"pony"</code> .
|
||
|
testString: 'assert(checkObj("gift") === "pony", "<code>checkObj("gift")</code> should return <code>"pony"</code>.");'
|
||
|
- text: <code>checkObj("pet")</code> debe devolver <code>"kitten"</code> .
|
||
|
testString: 'assert(checkObj("pet") === "kitten", "<code>checkObj("pet")</code> should return <code>"kitten"</code>.");'
|
||
|
- text: <code>checkObj("house")</code> debe devolver <code>"Not Found"</code> .
|
||
|
testString: 'assert(checkObj("house") === "Not Found", "<code>checkObj("house")</code> should return <code>"Not Found"</code>.");'
|
||
|
|
||
|
```
|
||
|
|
||
|
</section>
|
||
|
|
||
|
## Challenge Seed
|
||
|
<section id='challengeSeed'>
|
||
|
|
||
|
<div id='js-seed'>
|
||
|
|
||
|
```js
|
||
|
// Setup
|
||
|
var myObj = {
|
||
|
gift: "pony",
|
||
|
pet: "kitten",
|
||
|
bed: "sleigh"
|
||
|
};
|
||
|
|
||
|
function checkObj(checkProp) {
|
||
|
// Your Code Here
|
||
|
|
||
|
return "Change Me!";
|
||
|
}
|
||
|
|
||
|
// Test your code by modifying these values
|
||
|
checkObj("gift");
|
||
|
```
|
||
|
|
||
|
</div>
|
||
|
|
||
|
|
||
|
|
||
|
</section>
|
||
|
|
||
|
## Solution
|
||
|
<section id='solution'>
|
||
|
|
||
|
|
||
|
```js
|
||
|
var myObj = {
|
||
|
gift: "pony",
|
||
|
pet: "kitten",
|
||
|
bed: "sleigh"
|
||
|
};
|
||
|
function checkObj(checkProp) {
|
||
|
if(myObj.hasOwnProperty(checkProp)) {
|
||
|
return myObj[checkProp];
|
||
|
} else {
|
||
|
return "Not Found";
|
||
|
}
|
||
|
}
|
||
|
```
|
||
|
|
||
|
</section>
|