Всем привет,помогите пожалуйста,есть вот такой массив данных
var obj = [{
name: 'Test',
expirence: '364 days',
Frontender: true,
Backender: false,
company: 'Company'
},
{
name: 'Test 2',
expirence: '367 days',
Frontender: true,
Backender: false,
company: 'Company'
},
{
name: 'Test 3',
expirence: '731 days',
Frontender: true,
Backender: false,
company: 'Company'
}
];
И есть такое задание: 6) добавить объектам метод для преобразования в строковый тип - должно вернуть '_' 7) добавить объектам метод для преобразования в численный тип - должно вернуть '<кол-во лет опыта>' И вот такое решение:
var patt = /[^0-9]/g,
period = 365,
res = [];
function daysToYears(targetObj) {
targetObj.forEach(function(item, idx) {
itemExp = item.expirence.replace(patt, "")
if (itemExp > period) {
res = [item.name, Math.floor(itemExp / period)];
console.log(res);
}
});
}
daysToYears(obj);
как можно переписать решение 6 и 7 пункта через классы:
Т.е в базовый класс добавляются методы приведения объекта к строке и числу, а в дочернем метод приведения к строке переопределить - должны получить "Frontender__'.
И немного не понимаю как это можно сделать в функциональном и прототипном стилях. Я конечно понимаю,что это не фриланс,но буду очень благодарен если поможете или объясните(
Мы должны для каждого объекта добавить функцию, которая возвращает значение.
var obj = [
{
name: "Test",
expirence: "364 days",
Frontender: true,
Backender: false,
company: "Company"
},
{
name: "Test 2",
expirence: "367 days",
Frontender: true,
Backender: false,
company: "Company"
},
{
name: "Test 3",
expirence: "731 days",
Frontender: true,
Backender: false,
company: "Company"
}
];
obj = obj.map(o => ({ //Перебираем весь массив
...o, // Добавляем в новый объект значение из старого
getName() { // Создаем новый метод, для п.6
// PS getName() тоже самое что и getName: function()
return `${this.company}_${this.name}`;
},
daysToYears(){ // Создаем новый метод, для п.7
return Math.floor(this.expirence.replace(/[^0-9]/g, "") / 365);
}
}));
// Проверяем
console.log(" LOG ___ ", obj[1].getName());
console.log(" LOG ___ ", obj[2].daysToYears());
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Моя главная задача - сделать меню в ToolBar различным для разных маршрутов, те
Имеются кнопкиИмеются переменные, каждая из которых соответсвует каждой кнопке - она принимает значение true при нажатии, остальные принимают...
Как передать в callback delay ? Так не работает