Wir wissen, dass JavaScript eine Sprache ist, die sich schnell entwickelt. Zusammen mit ES2020 wurden viele tolle Funktionen hinzugefügt. Ehrlich gesagt kann man Code auf viele verschiedene Arten schreiben. Um dieselbe Funktion zu implementieren, sind einige Codes sehr lang und andere sehr kurz. Es gibt ein paar Tricks, mit denen Sie Ihren Code sauberer und klarer gestalten können. Die folgenden Tipps werden Ihnen bei Ihrer nächsten Entwicklungsarbeit auf jeden Fall nützlich sein.
Mit JavaScript können Sie Standardwerte für Funktionsparameter festlegen. Mit dieser Funktion können wir einen kleinen Trick implementieren, um Funktionsparameter zu überprüfen.
const isRequired = () => { throw new Error('param is required'); }; const print = (num = isRequired()) => { console.log(`printing ${num}`) }; print(2); //printing 2print(); // errorprint(null); //printing null
Sie müssen mit JSON.stringify
sehr vertraut sein, aber wussten Sie, dass Sie Ihren JSON-Code auch mit der Methode stringify
formatieren können? ?-Code. Eigentlich ist es ganz einfach. Die Methode
stringify
hat drei Parameter, nämlich value
replacer
und space
. Die letzten beiden Parameter sind optional, daher verwenden wir sie normalerweise nicht. Wenn wir den Ausgabecode einrücken möchten, können wir 2 oder 4 Leerzeichen verwenden.
console.log(JSON.stringify({ name:"John", Age:23 }, null, ' ')); >>> { "name": "John", "Age": 23}
Früher haben wir beim Deduplizieren von Arrays die Funktion filter
verwendet, um doppelte Werte herauszufiltern. Aber jetzt können wir mit der neuen Funktion Set
filtern. Ganz einfach:
let uniqueArray = [...new Set([1, 2, 3, 3, 3, "school", "school", 'ball', false, false, true, true])]; >>> [1, 2, 3, "school", "ball", false, true]
Manchmal möchten Sie den Wert im Array löschen, in dem Boolean(v)
ist false
. In JavaScript gibt es nur die folgenden 6 Typen:
undefined
null
NaN
0
false
Der einfachste Weg, diese Werte zu entfernen, ist die Verwendung der folgenden Methode:
array.filter(Boolean)
Wenn Sie Wenn Sie zuerst etwas ändern und dann filtern möchten, können Sie die folgende Methode verwenden. Denken Sie daran, dass das ursprüngliche Array array
unverändert bleibt und ein neues Array zurückgegeben wird.
array .map(item => { // Do your changes and return the new item }) .filter(Boolean);
Wenn Sie mehrere Objekte oder Klassen gleichzeitig zusammenführen müssen, können Sie die folgende Methode verwenden.
const user = { name: "John Ludwig", gender: "Male", };const college = { primary: "Mani Primary School", secondary: "Lass Secondary School", };const skills = { programming: "Extreme", swimming: "Average", sleeping: "Pro", };const summary = { ...user, ...college, ...skills }; >>> { name: 'John Ludwig', gender: 'Male', primary: 'Mani Primary School', secondary: 'Lass Secondary School', programming: 'Extreme', swimming: 'Average', sleeping: 'Pro'}
Die drei Punkte werden auch Erweiterungsoperatoren genannt.
JavaScript-Arrays verfügen über eine native Sortiermethode arr.sort
. Diese Sortiermethode wandelt Array-Elemente standardmäßig in Strings um und sortiert sie lexikografisch. Dieses Standardverhalten kann beim Sortieren numerischer Arrays zu Problemen führen. Hier finden Sie eine Möglichkeit, mit diesem Problem umzugehen.
[0, 10, 4, 9, 123, 54, 1].sort() >>> [0, 1, 10, 123, 4, 54, 9] [0, 10, 4, 9, 123, 54, 1].sort((a,b) => a-b); >>> [0, 1, 4, 9, 10, 54, 123]
Manchmal möchten Sie den Benutzer möglicherweise daran hindern, mit der rechten Maustaste zu klicken. Obwohl diese Anforderung selten vorkommt, kann sie sich als nützlich erweisen.
<body oncontextmenu="return false"> <p></p> </body>
Dieses einfache Code-Snippet kann verhindern, dass Benutzer mit der rechten Maustaste klicken.
Die Destrukturierungszuweisung ist eine Funktion von JavaScript, die es ermöglicht, Werte direkt aus Arrays oder Objekten abzurufen, ohne dass eine umständliche Deklaration von Variablen und erforderlich ist dann Zuweisung. Für Objekte können wir auf folgende Weise einen Namen für den Attributnamen neu definieren.
const object = { number: 10 };// Grabbing numberconst { number } = object;// Grabbing number and renaming it as otherNumberconst { number: otherNumber } = object;console.log(otherNumber); // 10
Wenn Sie das letzte Element im Array abrufen möchten, können Sie die Funktion slice
mit einer negativen Zahl verwenden als Parameter.
let array = [0, 1, 2, 3, 4, 5, 6, 7] console.log(array.slice(-1)); >>>[7]console.log(array.slice(-2)); >>>[6, 7]console.log(array.slice(-3)); >>>[5, 6, 7]
Manchmal müssen Sie möglicherweise auf die Ausführung mehrerer Versprechen warten, bevor Sie nachfolgende Vorgänge ausführen können. Sie können Promise.all
verwenden, um diese Versprechen parallel auszuführen.
const PromiseArray = [ Promise.resolve(100), Promise.reject(null), Promise.resolve("Data release"), Promise.reject(new Error('Something went wrong'))];Promise.all(PromiseArray) .then(data => console.log('all resolved! here are the resolve values:', data)) .catch(err => console.log('got rejected! reason:', err))
Bitte beachten Sie, dass, solange sich einer von Promise.all
im abgelehnten Zustand befindet, die Ausführung sofort gestoppt und eine Ausnahme ausgelöst wird.
Wenn Sie den Status „Gelöst“ oder „Abgelehnt“ ignorieren möchten, können Sie Promise.allSettled
verwenden. Dies ist eine neue Funktion von ES2020.
const PromiseArray = [ Promise.resolve(100), Promise.reject(null), Promise.resolve("Data release"), Promise.reject(new Error("Something went wrong")), ];Promise.allSettled(PromiseArray) .then((res) => { console.log("here", res); }) .catch((err) => console.log(err)); >>> here [ { status: 'fulfilled', value: 100 }, { status: 'rejected', reason: null }, { status: 'fulfilled', value: 'Data release' }, { status: 'rejected', reason: Error: Something went wrong at Object.<anonymous> at Module._compile (internal/modules/cjs/loader.js:1200:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1220:10) at Module.load (internal/modules/cjs/loader.js:1049:32) at Function.Module._load (internal/modules/cjs/loader.js:937:14) at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) at internal/main/run_main_module.js:17:47 } ]
Empfohlenes Tutorial: „JS-Tutorial“
Das obige ist der detaillierte Inhalt von10 gängige Tricks von JavaScript-Entwicklern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!