JSFiddle - React, Tailwind, and code Playground
by LuckyCat
JavaScript
'use strict';
// Нужно отсортировать юзеров(массив) по наличию в них установленного скилла
/*
let users = [
{name: 'Alex', experience: ['React', 'Babel']},
{name: 'Boba', experience: ['Ember', 'jQuery']},
{name: 'Lola', experience: ['Angular', 'TS']},
];
// Нужны только люди с такими скилами
let skills = ['Angular', 'React'];
*/
// Solutions:
let users = [
{name: 'Alex', experience: ['React', 'Babel']},
{name: 'Boba', experience: ['Ember', 'jQuery']},
{name: 'Lola', experience: ['Angular', 'TS']}
];
let skills = ['Angular', 'React'];
/*function getValues(array, search) {
var res = 0;
for (var i=0; i < array.length; i+=1) {
console.dir(array[i]);
for (var propName in array[i]) {
console.log(array[propName]);
}
}
//console.dir(users[0].name);
return res;
}*/
function getUserBySkills(users, skills) {
var result = [];
skills.forEach(function (val) {
users.forEach(function (user) {
if (user.experience.indexOf(val) !== -1) {
result.push(user);
}
});
});
return result;
}
console.log(
getUserBySkills(users, skills)
);
//console.log(getValues(users, skills));
/*function getValues(array, search) {
return array.reduce(function(values, item){
(item.experience[0] === search || item.experience[1] === search) && values.push(item.name);
return values;
}, []);
}
console.log(getValues(users, "TS"));*/