foods esteja sendo usado em um programa para uma caixa registradora de supermercado. Temos alguma função que define o selectedFood e queremos verificar o nosso objeto de foods para a presença desse alimento. Isso pode parecer com: let selectedFood = getCurrentFood (scannedItem);Esse código avaliará o valor armazenado na variável
let inventory = foods [selectedFood];
selectedFood e retornará o valor dessa chave no objeto foods , ou undefined se não estiver presente. A notação de colchetes é muito útil porque às vezes as propriedades do objeto não são conhecidas antes do tempo de execução ou precisamos acessá-las de uma maneira mais dinâmica. checkInventory , que recebe um item varrido como argumento. Retorna o valor atual da chave scannedItem no objeto foods . Você pode assumir que apenas chaves válidas serão fornecidas como um argumento para verificar checkInventory . checkInventory é uma função
testString: 'assert.strictEqual(typeof checkInventory, "function", "checkInventory is a function");'
- text: 'Os foods objeto devem ter apenas os seguintes pares de valores-chave: 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") deve retornar 25
testString: 'assert.strictEqual(checkInventory("apples"), 25, "checkInventory("apples") should return 25");'
- text: checkInventory("bananas") deve retornar 13
testString: 'assert.strictEqual(checkInventory("bananas"), 13, "checkInventory("bananas") should return 13");'
- text: checkInventory("strawberries") deve retornar 27
testString: 'assert.strictEqual(checkInventory("strawberries"), 27, "checkInventory("strawberries") should return 27");'
```