あなたが今知っている必要があるJavaScript断片🔥 - #3


こんにちは、友人!
閉じるこの動画はお気に入りから削除されています.
私が10のJSスニペットを50の重要なJSスニペットに関して毎週毎週与えているポストの私のシリーズに、戻ってください.
あなたがそれを逃したならば、ここでは、前の版があります.


1️⃣ 平均
このスニペットは2つ以上の数値の平均を返します.
const average = (...nums) => nums.reduce((acc, val) => acc + val, 0) / nums.length;
average(...[1, 2, 3]); // 2
average(1, 2, 3); // 2
2️⃣ 平均
このスニペットは、最初に与えられた関数を使用して各要素の値をマッピングした後の配列の平均値を返します.
const averageBy = (arr, fn) =>
  arr.map(typeof fn === 'function' ? fn : val => val[fn]).reduce((acc, val) => acc + val, 0) /
  arr.length;

averageBy([{ n: 4 }, { n: 2 }, { n: 8 }, { n: 6 }], o => o.n); // 5
averageBy([{ n: 4 }, { n: 2 }, { n: 8 }, { n: 6 }], 'n'); // 5
3️⃣ キャピタル
このスニペットは、与えられた文字列内のすべての単語の最初の文字を大文字で表します.
const capitalizeEveryWord = str => str.replace(/\b[a-z]/g, char => char.toUpperCase());

capitalizeEveryWord('hello world!'); // 'Hello World!'
4️⃣ ディレクトリの作成
このスニペットは、既存のディレクトリが存在するかどうかを確認するためにexists ()メソッドを使用します.
const fs = require('fs');
const createDirIfNotExists = dir => (!fs.existsSync(dir) ? fs.mkdirSync(dir) : undefined);
createDirIfNotExists('test'); 
// creates the directory 'test', if it doesn't exist
5️⃣ ディープフラットテン
このスニペットは配列を再帰的に平らにします.
const deepFlatten = arr => [].concat(...arr.map(v => (Array.isArray(v) ? deepFlatten(v) : v)));

deepFlatten([1, [2], [[3], 4], 5]); // [1,2,3,4,5]
6️⃣ 差異
このスニペットは2つの配列の違いを見つける.
const difference = (a, b) => {
  const s = new Set(b);
  return a.filter(x => !s.has(x));
};

difference([1, 2, 3], [1, 2, 4]); // [3]
7️⃣ 異なる
このメソッドは、2つの配列の違いを返します.
const differenceBy = (a, b, fn) => {
  const s = new Set(b.map(fn));
  return a.filter(x => !s.has(fn(x)));
};

differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor); // [1.2]
differenceBy([{ x: 2 }, { x: 1 }], [{ x: 1 }], v => v.x); // [ { x: 2 } ]
8️⃣ 異なる
このスニペットは、比較関数がfalseを返す値を削除します.
const differenceWith = (arr, val, comp) => arr.filter(a => val.findIndex(b => comp(a, b)) === -1);

differenceWith([1, 1.2, 1.5, 3, 0], [1.9, 3, 0], (a, b) => Math.round(a) === Math.round(b)); 
// [1, 1.2]
9️⃣ デジタル化する
このスニペットは、入力として数値を取得し、その数字の配列を返します.
const digitize = n => [...`${n}`].map(i => parseInt(i));

digitize(431); // [4, 3, 1]
🔟 ディスタンス
このスニペットはユークリッド距離を計算することによって2点間の距離を返す.
const distance = (x0, y0, x1, y1) => Math.hypot(x1 - x0, y1 - y0);

distance(1, 1, 2, 3); // 2.23606797749979
お読みありがとうございます.これはあなたにいくつかの助けをされています.
このようなポストや他の多くの技術ニュースや製品の起動を見逃すことはない私のニュースレターを購読する.
Abhiraj's Dev-letter
次回まで
Abhiraj