Хороший способ сделать это - использовать HostListener
@HostListener("window:scroll", [])
onWindowScroll() {
let scroll = this.window.pageYOffset || this.document.documentElement.scrollTop || this.document.body.scrollTop || 0;
if (number = 0) {
// Do some stuff here
}
}
Теперь я просто хочу добавить, что вам, вероятно, нужно учитывать упругую прокрутку на рабочих столах Mac. Это означает, что ваша позиция прокрутки может идти в минус и может не достигать 0 точно, когда вы хотите, чтобы это событие сработало.
Вот хороший пост в блоге об этом, если вы хотите больше материала для чтения
Следует иметь в виду, что Java также используется на мобильных устройствах, где память намного более ограничена.
Я нашел, что использовал переменные байта при выполнении некоторой обработки изображений низкого уровня..Net GDI + тянет стандартные программы, были действительно медленными так я скрученный вручную мое собственное.
Большинство раз, тем не менее, я придерживаюсь целых чисел со знаком, если я не вынужден использовать что-то большее, учитывая ограничения задач. Любой вид моделирования физики, которое я делаю обычно, требует плаваний или удваивается, даже если мне не нужна точность.
Apache POI использовал short
довольно много раз. Вероятно, из-за ограничения числа Excel row/column.
Несколько месяцев назад они изменились на int
замена
createCell (короткий columnIndex)
с
Я использовал байты при сохранении состояния при выполнении образцовой проверки. В том приложении сбережения пространства стоят дополнительной работы. Иначе я никогда не использую их.
Возможно, более интересно посмотреть на семантику интервала. Те произвольные пределы и тихое усечение то, что Вы хотите? Поскольку код прикладного уровня действительно хочет произвольные размерные целые числа, это просто, что Java не имеет никакого способа выразить их обоснованно.
До сих пор у меня нет уведомления, как редко я использую их.
У меня есть байт использования для связанного с сетью материала, но большинство времен они были для моих собственных инструментов/изучения. В проектах работы эти вещи обрабатываются платформами (JSP, например)
Короткий? почти никогда.
Долго? Ни один.
Мои предпочтительные целочисленные литералы всегда являются интервалом, для циклов, счетчиков, и т.д.
Когда данные прибывают из другого места (база данных, например), я использую надлежащий тип, но для литералов я всегда использую интервал.
Основное использование я видел их, при обработке данных с неизвестной структурой или даже никакой реальной структурой. Сетевое программирование является примером первого (кто бы ни отправляет, данные знают то, что это означает, но Вы не могли бы), что-то как сжатие изображения с 256 цветами (или шкала полутонов), изображения являются примером последнего.
Первое, что пришло на ум grep приходит на ум в то время как другое использование, как делает любой вид копии файла. (Несомненно, ОС сделает это - но иногда это не достаточно хорошо.)
Сам язык Java делает необоснованно трудным использовать byte
или short
типы. Каждый раз, когда Вы выполняете любую операцию на a byte
или short
значение, Java продвигает его int
во-первых, и результат операции возвращается как int
. Кроме того, они подписываются, и нет никаких неподписанных эквивалентов, который является другим частым источником разочарования.
Таким образом, Вы заканчиваете тем, что использовали byte
много, потому что это - все еще основа всех кибер вещей, но short
тип не мог бы также существовать.
Я использую байты в большом количестве различных мест, главным образом включая обработку данных низкого уровня. К сожалению, разработчики языка Java сделали байты подписанными. Я не могу думать ни о какой ситуации, в которой наличие отрицательных значений байта было полезно. Наличие диапазона 0-255 было бы намного более полезным.
Я не думаю, что когда-либо использовал короткие замыкания в любом надлежащем коде. Я также никогда не использую плавания (если мне нужны значения с плавающей точкой, я всегда использую дважды).
Я соглашаюсь с Tom. Идеально, на высокоуровневых языках мы не должны быть обеспокоены базовыми представлениями машины. Мы должны смочь определить наши собственные диапазоны или использовать числа произвольной точности.
Я использовал 'байт' много в коде C/C++, реализовывая функциональность как сжатие изображения (т.е. выполняя алгоритм сжатия по каждому байту черно-белого битового массива), и обрабатывая двоичные сетевые сообщения (путем интерпретации байтов в сообщении).
Однако я фактически никогда не использовал 'плавание' или 'дважды'.
когда мы программируем для электронных устройств как мобильный телефон, мы используем байт и короткий. В этом случае мы должны заботиться на управлении памятью.
Я использую байт много. Обычно в форме массивов байтов или ByteBuffer, для сетевой связи двоичных данных.
Я редко использую плавание или дважды, и я не думаю, что когда-либо использовал короткий.