Ternary 연산자로 자바스크립트에서의 이미지 레이지 로딩 구현

이미지 레이지 로딩은 웹 애플리케이션의 성능을 향상시키고 사용자 경험을 향상시키는데 도움이 됩니다. 자바스크립트에서는 ternary 연산자를 사용하여 이미지 레이지 로딩을 구현할 수 있습니다. 이번 포스트에서는 자바스크립트에서 ternary 연산자를 사용하여 이미지를 로딩하는 방법에 대해 알아보겠습니다.

1. 이미지 레이지 로딩이란?

이미지 레이지 로딩은 웹 페이지에 표시되는 이미지를 로드하는 방식입니다. 일반적으로 이미지가 바로 로드되지 않고, 사용자가 해당 이미지를 볼 수 있는 부분까지 스크롤될 때까지 로드되지 않습니다. 이를 통해 초기 페이지 로딩 속도를 향상시킬 수 있습니다.

2. 자바스크립트를 사용한 이미지 레이지 로딩 구현

자바스크립트를 사용하여 이미지 레이지 로딩을 구현하기 위해서는 먼저 이미지 요소를 동적으로 생성해야 합니다. 이때, ternary 연산자를 사용하여 이미지 요소의 속성 값을 변경할 수 있습니다.

const lazyImages = document.querySelectorAll('.lazy');

lazyImages.forEach(image => {
  const source = image.dataset.src;
  const alt = image.dataset.alt;

  image.src = source ? source : '';
  image.alt = alt ? alt : '';
});

위 예제에서는 lazyImages라는 클래스명을 가진 이미지 요소들을 선택하고, 각각의 이미지 요소에 dataset 속성을 사용하여 이미지의 경로와 대체 텍스트 값을 가져온 후, ternary 연산자를 사용하여 속성 값이 존재하는 경우에만 해당 값을 할당합니다. 속성 값이 존재하지 않는 경우, 빈 문자열을 할당하여 기본값으로 처리합니다.

3. 예제

이미지 요소를 동적으로 생성하여 이미지 레이지 로딩을 구현하는 예제를 살펴보겠습니다.

<img class="lazy" data-src="image.jpg" data-alt="Example Image" alt="">

위 예제에서는 lazy 클래스명을 가진 이미지 요소를 생성하고, data-src 속성을 사용하여 이미지 경로를 지정하였습니다. 또한, data-alt 속성을 사용하여 대체 텍스트를 지정하였습니다.

이제 자바스크립트 코드를 사용하여 이미지를 로딩하고, 로드되지 않은 이미지는 빈 문자열로 처리됩니다.

4. 마무리

이번 포스트에서는 자바스크립트에서 ternary 연산자를 사용하여 이미지 레이지 로딩을 구현하는 방법에 대해 알아보았습니다. 이미지 레이지 로딩은 웹 페이지의 성능을 향상시키고 사용자 경험을 개선하는데 도움이 되는 기술입니다. ternary 연산자를 사용하여 이미지 요소의 속성 값을 동적으로 변경함으로써, 간단하게 이미지 레이지 로딩을 구현할 수 있습니다.

참고 자료:

#lazyloading #javascript