各開発者は、日々のタスクをより迅速に解決するのに役立つユーティリティを備えた独自の「バックパック」を持っています。この記事では、各プロジェクトに追加できる10個の簡潔で非常に便利なJSスニペットを紹介します。これらはフレームワークに依存せず、Node.js からブラウザまで、あらゆる環境で動作します。
1. 📅 日付の書式設定
const formatDate = (date) =>
new Intl.DateTimeFormat('ru-RU', {
dateStyle: 'medium',
timeStyle: 'short',
}).format(date);❓目的: 日付と時刻を美しくローカライズして表示します。
例: formatDate(new Date()) // 「2025年6月29日、12:00」
2. 🧪 検査:プロミスかどうか
const isPromise = (val) =>
Boolean(val && typeof val.then === 'function');❓目的: 私たちの前にあるのはプロミスであると判断します。
3. 📜 クリップボードにコピー
const copyToClipboard = async (text) =>
await navigator.clipboard.writeText(text);❓目的: クリックで「コピー」を実装する必要があることがよくあります。
4. 🔁 オブジェクトのディープコピー
const deepClone = (obj) =>
JSON.parse(JSON.stringify(obj));❓目的: 元のオブジェクトを変更しないようにします。
5. ⏳ シンプルなデバウンス
const debounce = (fn, delay = 300) => {
let timeout;
return (...args) => {
clearTimeout(timeout);
timeout = setTimeout(() => fn(...args), delay);
};
};❓目的: 入力などの頻繁なイベントを最適化します。
6. 🚫 配列から重複を削除する
const unique = (arr) => [...new Set(arr)];❓目的: 配列をエレガントに重複からクリアします。
7. 🆔 単純なIDの生成
const randomId = () =>
Math.random().toString(36).slice(2, 10);❓目的: UIまたはキーの迅速な一意の値。
8. ⏱ 非同期/待機スタイルの遅延
const sleep = (ms) =>
new Promise((resolve) => setTimeout(resolve, ms));❓目的: アニメーションの遅延、一時停止、テストなどのシミュレーション
9. 💬 URLからパラメータを取得する
const getQueryParam = (key) =>
new URLSearchParams(window.location.search).get(key);❓ 目的: フィルタリング、ページネーションなどの際に頻繁に必要です。
10. 🧼空の値からオブジェクトをクリアする
const cleanObject = (obj) =>
Object.fromEntries(
Object.entries(obj).filter(([_, v]) => v != null)
);❓ 目的: データを送信する前にnullとundefinedを削除します。
🤔 なぜこれらのスニペットを覚える必要があるのでしょうか?
📌 彼らが決める 典型的なタスク、あらゆるプロジェクトで発生します。
📌 開発を加速し、コードをよりクリーンにします。
📌 初心者にも経験者にも役立ちます。
プログラミングを学び、毎日レベルアップしたいなら、アプリをチェックしてください コディックこれは、練習とチャレンジを通じてプログラミングを学ぶためのエキサイティングな方法です!
ウェブ版コディック - https://itcodik.com/
📦 アドバイス
utils.js ファイルを作成し、お気に入りのユーティリティのコレクションをそこに保存します。個人的なJSスイスナイフのように 🛠
