var menu = {
width: 200,
height: 300,
title: "My menu"
};
function multiplyNumeric(obj) {
for (var key in obj) {
if (typeof (obj[key] == 'number')) {
delete obj[key];
}
}
}
multiplyNumeric(menu);
console.log(menu)
нужно удалить свойство если его значение число, или строка, в зависимости от условия
У Вас лишние скобки в условии:
if (typeof (obj[key] == 'number')) {
Выражение typeof (obj[key] == 'number')
сводится к typeof(true)
или typeof(false)
и возвращает строку "boolean"
, в результате if
всегда выполняется и удаляются все значения из obj
Рабочий пример:
var menu = {
width: 200,
height: 300,
title: "My menu"
};
function multiplyNumeric(obj) {
for (var key in obj) {
if (typeof obj[key] === 'number') {
delete obj[key];
}
}
}
multiplyNumeric(menu);
console.log(menu)
var menu = {
width: 200,
height: 300,
title: "My menu"
};
function multiplyNumeric(obj) {
const v = {};
for (var key in obj) {
if (typeof obj[key] !== 'number') {
v[key] = obj[key];
// Не изменит старый обект если надо изменить просто замени v[key] = obj[key] на delete obj[key];
}
}
return v;
}
console.log(multiplyNumeric(menu));
console.log(menu);
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть 2 селектора со странами и городами, как добавить третий в котором будут районы, что бы при выборе города, появлялся третий select с выбором...
Нужна система выпадающих списков, чтоб каждый появлялся только при выборе в предыдущем спискеТо есть, имеем Список 1