JavaScript의 6가지 킬러 유틸리티 함수

이것은 지난주 JavaScript의 7 Killer One-Liners에 대한 확장 입니다. 아직 이 기사를 읽지 않았다면 읽어보는 것이 좋습니다.

1. 뷰포트에서 요소가 보이는지 확인

IntersectionObserver요소가 뷰포트에 표시 되는지 확인하는 좋은 방법 입니다.

const callback = (entries) => {
  entries.forEach((entry) => {
    if (entry.isIntersecting) {
      // `entry.target` is the dom element
      console.log(`${entry.target.id} is visible`);
    }
  });
};
const options = {
  threshold: 1.0,
};
const observer = new IntersectionObserver(callback, options);
const btn = document.getElementById("btn");
const bottomBtn = document.getElementById("bottom-btn");
observer.observe(btn);
observer.observe(bottomBtn);

2. 장치 감지

당신은 navigator.userAgent작은 통찰력을 얻고 응용 프로그램을 실행하는 장치를 감지하는 데 사용할 수 있습니다

const detectDeviceType = () =>
  /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(
    navigator.userAgent
  )
    ? "Mobile"
    : "Desktop";
console.log(detectDeviceType());

속성을 사용하여 요소 의 가시성을 토글 할 수 있으며 렌더 흐름에서 요소를 제거style.visibility 하려는 경우 속성 을 사용할 수 있습니다 .style.display

const hideElement = (element, removeFromFlow = false) => {
  removeFromFlow
    ? (element.style.display = "none")
    : (element.style.visibility = "hidden");
};

4. URL에서 매개변수 가져오기

JavaScript 는 객체 parameters를 사용하여 공원을 산책하는 모든 주소에서 가져오기 를 수행합니다.URL

const url = new URL(window.location.href);
const paramValue = url.searchParams.get("paramName");
console.log(paramValue);

문자열로 변환하고 다시deep copy 개체로 변환하여 모든 개체를 만들 수 있습니다 .

const deepCopy = (obj) => JSON.parse(JSON.stringify(obj));

JavaScript 는 함수와 함께 setTimeout제공되지만 객체를 반환하지 않으므로 Promise에서 사용하기 어렵습니다 async functions. 그래서 우리는 우리 자신의 wait/ sleep함수를 작성해야 합니다.

const wait = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
const asyncFunc = async () => {
  await wait(1000);
  console.log("async");
};
asyncFunc();

기술 영역 에 대한 주간 새로운 정보 를 보려면 저를 팔로우하세요.

개발 문제를 해결하기 위해 최고 등급의 프론트엔드 개발 프리랜서 가 필요하십니까 ? Upwork 에서 저에게 연락하십시오

내가 작업하고 있는 것을 보고 싶으십니까? 내 개인 웹사이트 및 GitHub 확인

연결하시겠습니까? LinkedIn 에서 저에게 연락하세요

저는 2022년 중반에 디지털 노마드 로 시작하는 프리랜서입니다. 여행을 잡고 싶습니까? 인스타그램 팔로우

Suggested posts

Goodreads 읽기 챌린지는 독성이 있습니다.

Goodreads 읽기 챌린지는 독성이 있습니다.

지역 서점과 또 다른 책을 흥정하면서 손에 가려움증이 퍼졌습니다. 내가 최근에 구입한 나머지 책과 같은 이 책은 내 'To Be Read'(TBR) 더미에서 왕좌를 찾을 것입니다. 그러나 나는 그것을 샀다.

전화번호만 있으면 누구나 추적 | OSINT 조사

전화번호만 있으면 누구나 추적 | OSINT 조사

OSINT 수사관, CTF 플레이어 또는 단순히 스팸 전화를 받는 사람일 수 있습니다. 광고에서 본 번호를 확인하려는 사람.

Related posts

느린 침식: 사람들이 경력을 낭비하는 방식 공개

느린 침식: 사람들이 경력을 낭비하는 방식 공개

오늘날과 같이 급변하고 경쟁이 치열한 세상에서 경력은 개인의 성장, 재정적 안정 및 전반적인 삶의 만족도에 중요한 역할을 합니다. 그러나 많은 사람들은 침체와 불만족의 끊임없는 순환에 휩싸여 직업 생활에서 점차 쇠퇴하고 있습니다.

카우보이의 거짓말

거대 기업이 미국인에게 강력한 거짓을 판매하는 방법

카우보이의 거짓말

햇빛의 첫 번째 광선이 평원의 서리가 내린 풀을 비추는 서쪽 언덕의 눈부신 황금빛 아침입니다. 온화하고 거대한 새까만 앵거스 소 떼가 일출을 배경으로 윤곽을 그리며 다져진 길을 따라 모두가 잘 아는 지역으로 향합니다. 조식 바.

기독교인에 대한 박해: 우리가 말하지 않는 증오 범죄

이슬람 혐오증은 잊으십시오. 기독교인(및 유대인)은 종교적 증오 범죄의 주요 피해자입니다.

기독교인에 대한 박해: 우리가 말하지 않는 증오 범죄

이성적인 마음을 가진 사람이라면 정치계와 언론계가 좌파, 심지어 극좌파에 의해 지배되고 있다는 사실을 알고 있습니다. 종교 분야에서 이러한 불균형은 분명히 눈에 띕니다. 좌익 신문과 네트워크는 기독교 신앙을 옹호하기 위해 서두르지 않습니다.

FY24의 탄소 제거 자금 조달

경로 전반에 걸친 Carbon180의 세출 요청 내역

FY24의 탄소 제거 자금 조달

Alyson Lee, 공무 관리 고문 연방 정부의 연간 예산 책정 과정은 이산화탄소 제거(CDR) 기금 마련을 위한 노력의 핵심입니다. 매년 Carbon180은 내년의 자금 흐름을 안내하기 위해 다양한 의회 사무소에 요청을 제출합니다.