foods se está utilizando en un programa para una caja registradora de un supermercado. Tenemos alguna función que configura los foods selectedFood y queremos verificar el objeto de nuestros foods para detectar la presencia de ese alimento. Esto podría parecer: let selectedFood = getCurrentFood (scannedItem);Este código evaluará el valor almacenado en la variable
let inventario = alimentos [alimentos seleccionados];
selectedFood y devolverá el valor de esa clave en el objeto de foods , o undefined si no está presente. La notación de corchetes es muy útil porque a veces las propiedades de los objetos no se conocen antes del tiempo de ejecución o necesitamos acceder a ellos de una manera más dinámica. checkInventory , que recibe un elemento escaneado como un argumento. Devuelve el valor actual de la clave scannedItem en el objeto de foods . Puede suponer que solo se proporcionarán claves válidas como argumento para checkInventory . checkInventory es una función
testString: 'assert.strictEqual(typeof checkInventory, "function", "checkInventory is a function");'
- text: 'El objeto de foods debe tener solo los siguientes pares clave-valor: apples: 25 , oranges: 32 , plums: 28 , bananas: 13 , grapes: 35 , strawberries: 27'
testString: 'assert.deepEqual(foods, {apples: 25, oranges: 32, plums: 28, bananas: 13, grapes: 35, strawberries: 27}, "The foods object should have only the following key-value pairs: apples: 25, oranges: 32, plums: 28, bananas: 13, grapes: 35, strawberries: 27");'
- text: checkInventory("apples") debe devolver 25
testString: 'assert.strictEqual(checkInventory("apples"), 25, "checkInventory("apples") should return 25");'
- text: checkInventory("bananas") debe devolver 13
testString: 'assert.strictEqual(checkInventory("bananas"), 13, "checkInventory("bananas") should return 13");'
- text: checkInventory("strawberries") debe devolver 27
testString: 'assert.strictEqual(checkInventory("strawberries"), 27, "checkInventory("strawberries") should return 27");'
```