The Link (you'll have to sign up)Повторные неудачные испытания для: Данный объект и ключ, обратный массив, содержащий элементы в массиве, расположенных в данном ключе, что встречаются условия
Хотя мой код возвращает ожидаемый результат, я получаю неудачные испытания для проблема. Является ли проблема с тестом или с моим кодом?
Проблема ...
Учитывая объект и ключ, написать функцию, которая возвращает массив, содержащий элементы в массиве, расположенных в данном ключе, которые удовлетворяют условию.
- Если массив пуст, верните пустой массив.
- Если массив не удовлетворяет условиям, верните пустой массив.
- Если свойство заданного ключа не является массивом, верните пустой массив.
- Если в ключе нет свойства, верните пустой массив.
Состояние: элементы менее 100.
Кодекса
// expected output -> [20, 50, 0, 16]
var obj = {
key: [150, 20, 50, 100, 0, 16]
};
function getElementsLessThan100AtProperty(obj, key) {
var arr = [];
for (var i in obj.key){
if(obj.key[i] < 100){
arr.push(obj.key[i]);
}
}
return arr;
}
getElementsLessThan100AtProperty(obj, 'key')// [20, 50, 0, 16]
Failed тестовое сообщение
should return an array containing all the elements less than 100 in the array located at key
Expected to equal 20,50,0,16.
Что дает ?? Я что-то пропустил здесь или неправильно?
Похоже, что тест виноват во мне. Вы должны проверить, является ли ожидаемый результат массивом. – davidatthepark
Показать код вашего тестового и удаленного аргументов 'key' не используется. – jtabuloc
Вот что я подумал и о аргументе «ключ», это не обязательно. Код выхода теста недоступен. Тест ожидает массив. Если я жестко закодирую возврат функции с ожидаемым выходом в виде массива, эта часть теста проходит, но тест с пустым массивом явно терпит неудачу. Когда я использую оператор if и возвращаю жесткий массив или пустой массив, он терпит неудачу. Это странно? – nSideOut