6 Killer-Utility-Funktionen in JavaScript

Dies ist so etwas wie eine Erweiterung der 7 Killer One-Liner der letzten Woche in JavaScript . Wenn Sie den Artikel noch nicht gelesen haben, sollten Sie dies unbedingt tun.

1. Prüfen Sie, ob ein Element im Ansichtsfenster sichtbar ist

IntersectionObserverist eine großartige Möglichkeit, um zu überprüfen, ob ein Element im Ansichtsfenster sichtbar ist .

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. Gerät erkennen

Sie können den verwenden navigator.userAgent, um genaue Einblicke zu gewinnen und das Gerät zu erkennen, auf dem die Anwendung ausgeführt wird

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

Sie können die Sichtbarkeit eines Elements einfach mit der Eigenschaft umschalten und falls Sie es aus dem Renderfluss entfernenstyle.visibility möchten , können Sie die Eigenschaft verwenden.style.display

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

4. Holen Sie sich die Parameter aus der URL

JavaScript macht das Abrufen von einer beliebigen Adresse mithilfe des Objekts parameterszu einem Spaziergang im Park .URL

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

Sie können deep copyjedes Objekt in einen String und wieder zurück in ein Objekt umwandeln .

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

JavaScript wird mit einer setTimeoutFunktion ausgeliefert, gibt aber kein PromiseObjekt zurück, was die Verwendung in async functions. Also müssen wir unsere eigene wait/ sleep-Funktion schreiben.

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

Folgen Sie mir für wöchentlich neue Leckerbissen im Bereich Technik

Benötigen Sie einen erstklassigen Front-End-Entwicklungs-Freelancer , der Ihre Entwicklungsprobleme beseitigt? Kontaktieren Sie mich auf Upwork

Wollen Sie sehen, woran ich arbeite? Besuchen Sie meine persönliche Website und GitHub

Möchten Sie sich verbinden? Kontaktieren Sie mich auf LinkedIn

Ich bin ein Freiberufler, der Mitte 2022 als Digitaler Nomade durchstarten wird. Möchten Sie die Reise erwischen? Folge mir auf Instagram

Suggested posts

Informationen zu Domänennamen finden

Ein Auszug aus Small, Sharp Software Tools von Brian P. Hogan

Informationen zu Domänennamen finden

Wenn Sie eine Anfrage an facebook.com stellen, sucht Ihr Computer nach dem Domänennamen, um diesen in eine IP-Adresse zu übersetzen, damit Ihr Computer diese Verbindung herstellen kann.

GRENZENLOSES LEBEN

Wenn man erwachsen wird, wird einem oft gesagt, dass die Welt so ist, wie sie ist, und dass das Leben nur darin besteht, sein Leben in der Welt zu leben, niemals sein Leben zu riskieren, einfach einem festgelegten Weg zu folgen und am Ende zu sterben, und versucht, es nicht zu tun Schlage zu viel gegen die Wände. Aber das ist ein sehr begrenztes Leben.

Related posts

Ist Kunst jemals unpolitisch?

Ist Kunst jemals unpolitisch?

Gestern haben wir die Tür zum diesjährigen Eurovision Song Contest mit einem glitzernden, chaotischen großen Finale geschlossen, bei dem die schwedische Sängerin Loreen die Trophäe mit nach Hause nahm. Sie war damit die erste Frau, die zweimal gewann, und holte die Krone 50 Jahre nach dem Gewinn des Wettbewerbs durch ABBA zurück nach Schweden mit „Waterloo“. Sie entwickelten sich zu einem der größten Acts im Kanon der Popmusik.

Sammeln von OSINT für die Bedrohungssuche

Sammeln von OSINT für die Bedrohungssuche

Hallo, Cyber-Enthusiasten! Willkommen zurück bei der OSINT-Serie zur Bedrohungsjagd. Im ersten Artikel habe ich Ihnen einen Überblick über OSINT und seine Bedeutung bei der Bedrohungsjagd gegeben.

Schaffung einer sicheren Arbeitsumgebung

Schaffung einer sicheren Arbeitsumgebung

„Er wird mich beschützen, wenn ich in Gefahr bin. Er wird mich in seinem Zelt verstecken.

Die Goodreads Reading Challenge ist giftig

Die Goodreads Reading Challenge ist giftig

Der Juckreiz in meiner Hand breitete sich aus, als ich mit dem örtlichen Buchhändler um ein weiteres Buch verhandelte. Dieses Buch würde wie die anderen, die ich kürzlich gekauft habe, seinen Thron auf meinem Stapel „To Be Read“ (TBR) finden; und trotzdem habe ich es gekauft.