str.split('/').pop()
// или
str.match(/[^\/]+$/)[0]
// или
str.replace(/.*\//, '')
// или
str.slice(str.lastIndexOf('/') + 1)
// или
Array.from(str).reduce((acc, n) => n === '/' ? '' : acc + n, '')
// или
[...str].filter((n, i, a) => !a.includes('/', i)).join('')      a => a.name == "Adam"
/*
* стрелочная функция, принимающая на вход один аргумент, 
* который может быт назван как угодно, 
* и возвращающая при вызове результат сверки свойства name у переданного аргумента
* со строкой 'Adam'
*/let arr = {
    object1 = {
        name: "Adam",
        year: 1997
    }, object2 = {
        name: "John",
        year: 2000
    }, object3 = {
        name: "Conor",
        year: 2001
    }, object4 = {
        name: "Adam",
        year: 2000
    }
}let arr = [
    {
        name: "Adam",
        year: 1997
    }, {
        name: "John",
        year: 2000
    }, {
        name: "Conor",
        year: 2001
    }, {
        name: "Adam",
        year: 2000
    }
]let arr = {
    object1: {
        name: "Adam",
        year: 1997
    }, object2: {
        name: "John",
        year: 2000
    }, object3: {
        name: "Conor",
        year: 2001
    }, object4: {
        name: "Adam",
        year: 2000
    }
}const foo = function(arg) {
  return arg > 2;
}function mapper(array, func) {
  return array.map(func);
}
mapper([1, 2, 3], foo);(arg) => arg > 2;почти то же самое, что определение функции foo() выше.