Как Вы переопределяете рубиновый оператор равенства случая? (== =)

У Angular больше нет трубы OrderBy. Вы можете обратиться к этому для более подробной информации.

Вам нужно будет вручную отсортировать массив reportingOfficers. Кажется, это массив объектов?

Чтобы выполнить сортировку без учета регистра, нам потребуется предоставить пользовательскую функцию сортировки путем преобразования значений staffName в нижний регистр.

reportingOfficers.sort((a, b) => a['staffName'].toLowerCase().localeCompare(b['staffName'].toLowerCase()));
console.log(reportingOfficers);

Вот как это делается с ванильным JavaScript / TypeScript (без использования дополнительных библиотек, таких как Lodash).

6
задан Marcin 10 March 2009 в 10:58
поделиться

1 ответ

Выражение после ключевого слова 'случая' является правой стороной === выражения и выражения после, 'когда' ключевое слово имеет на левой стороне выражение. Так, метод, который называют, является Строкой. ===, не A. ===.

Быстрый подход к инвертированию сравнения:

class Revcomp
    def initialize(obj)
        @obj = obj
    end

    def ===(other)
        other === @obj
    end

    def self.rev(obj)
        Revcomp.new(obj)
    end
end

class Test
    def ===(other)
        puts "here"
    end
end

t = Test.new

case t
when Revcomp.rev("abc")
    puts "there"
else
    puts "somewhere"
end
8
ответ дан 16 December 2019 в 21:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: