Сокращение для: назначить, если не ложный JavaScript

Я хочу посмотреть, существует ли условно что-то, что я делаю довольно часто.

Я обычно пишу / использую функции, которые возвращают false, если не в состоянии сделать то, что они могут, но объект, если могут. Я также мог бы обычно хотеть проверить, был ли успешен.

Например.

function someFunc() {
    // assume a is some object containing objects with or without key b
    // edit: and that a[b] is not going to *want* to be false
    function getAB(a, b) {
        if(a[b]) return a[b];
        return false;
    }

    let ab = getAB(a, b);
    if(!ab) return false;
}

Я просто хотел узнать, есть ли какие-то сокращения для этого. Например, в стране фантазий,

//...
let ab = getAB(a, b) || return false
//...

1 ответ

Решение

Вы можете использовать или оператор, как:

return a[b] || false

Ваш полный пример кода может быть записан как:

function someFunc() {
    // assume a is some object containing objects with or without key b
    function getAB(a, b) {
      return a[b] || false
    }

    return getAB(a, b); // getAB already returns the value, no need to check again.
}
Другие вопросы по тегам