1. 数字を逆にする定数逆数 = n => parseFloat(`${n}`.split('').reverse().join('')) * Math.sign(n); 逆数(123); // 321 逆数(-200); // -2 逆数(32.4); // 4.23 逆数(-32.4); // -4.23 2. 配列内の最大のn個の数値を取得するconst maxFromArray = (配列、数値 = 1) => [...配列] .sort((x, y) => y -x).slice(0, 数値); maxFromArray([2, 1, 4, 3, 5, 6]); // [6] maxFromArray([2, 1, 4, 3, 6, 6], 2); // [6, 6] 3. 階乗を計算するconst 階乗 = (数値) => 数値 < 0 ? (() => { 新しい TypeError をスローします ('型エラー')。 })() : 数値 <= 1 ? 1 : 数値 * 階乗(数値 - 1); 階乗(4); // 24 階乗(10); // 3628800 4. 現在の動作環境がブラウザであるかどうかを判断するconst isBrowser = () => ![typeof window, typeof document].includes('undefined'); isBrowser(); // false (ノード) isBrowser(); // true (ブラウザ) 5. 現在の動作環境がNode.jsであるかどうかを確認する定数isNode = () => プロセスのタイプ !== 'undefined' && !!プロセス.バージョン && !!プロセス.バージョン.ノード; isNode(); // true (ノード) isNode(); // false (ブラウザ) 6. URLのパラメータを取得するconst getURLParams = url => (url.match(/([^?=&]+)(=([^&]*))/g) || []).reduce( (a, v) => ( (a[v.slice(0, v.indexOf('='))] = v.slice(v.indexOf('=') + 1))、a )、 {} ); getURLParams('qq.com'); // {} getURLParams('https://xx.com?name=tntweb&age=20'); // {名前: 'tntweb'、年齢: '20'} 7. rgb(x,x,x)カラー表現形式をオブジェクト形式に変換する定数toRGBObject = rgbStr => { const [赤、緑、青] = rgbStr.match(/\d+/g).map(Number); { 赤、緑、青 } を返します。 }; toRGBObject('rgb(100, 150, 200)'); // {赤: 100、緑: 150、青: 200} 8. HTMLで使用するための文字列のエスケープconst escapeHTML = str => str.replace() 文字列を置換します。 /[&<>'"]/g, タグ => ({ '&': '&', '<': '<', '>': '>', "'": ''', '"': '"' }[タグ] || タグ) ); escapeHTML('<a href="#" rel="external nofollow" >tntweb</a>'); 9. アンエスケープはHTML文字をエスケープしますconst unescapeHTML = str => str.replace() 文字列を置換します。 /&|<|>|'|"/g, タグ => ({ '&': '&', '<': '<', '>': '>', ''': "'", '"': '"' }[タグ] || タグ) ); unescapeHTML('<a href="#">tntweb</a>'); 10. 指定された範囲内でランダムな整数を生成する定数ランダム整数範囲 = (最小, 最大) => Math.floor(Math.random() * (max - min + 1)) + min; ランダム整数範囲(1, 7); // 1 - 7 11. チルダパスを絶対パスに変換するconst 逆パス = str => str.replace(/^~($|\/|\\)/, `${require('os').homedir()}$1`); 逆パス('~/web'); // '/Users/[ユーザー名]/web' 12. パラメータやフラグメント識別子なしで現在のURLを取得するconst getBaseURL = url => url.replace(/[?#].*$/, ''); 'https://xx.com/index?name=tntweb&company=tencent' を取得します。 // https://xx.com/index 13. 文字列の長さをバイト単位で返すconst byteSize = str => new Blob([str]).size; バイトサイズ('🚗'); // 4 byteSize('Hello World'); // 11 14. 配列内の要素をランダムに取得するconst ランダム = arr => arr[Math.floor(Math.random() * arr.length)]; ランダムに([1, 3, 5, 7, 9, 11]); 15. 文字列が有効なJSONであるかどうかを確認する定数isValidJSON = str => { 試す { JSON を解析します。 true を返します。 } キャッチ (e) { false を返します。 } }; isValidJSON('{"name":"tntweb","age":20}'); // 真 isValidJSON('{"name":"tntweb",age:"20"}'); // 偽 isValidJSON(null); // 真 これで、収集する価値のある 15 個の JavaScript 関数に関するこの記事は終了です。より関連性の高い JavaScript 関数のコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL データベース クエリ パフォーマンス最適化戦略
>>: MySQL はどのようにしてデータの整合性を確保するのでしょうか?
目次1. 実験環境2. Dockerソースをインストールする3. Dockerをインストールする4....
解決策 1: HEAD に次のコードを挿入するなど、HTML ドキュメントで条件付きインポートを使用...
とあるサイトからレンタルした仮想マシンの有効期限が近づいており、更新料が200元以上かかります。Al...
Dockerの機能1) すぐに始められるユーザーがプログラムを「Docker 化」するには、わずか数...
border-radius:10px; /* すべての角は半径 10px で丸められます*/ bor...
問題の起源docker を使用する場合、残念ながら docker コンテナ内のホストのポート 80 ...
【背景】最近勉強中に非常に恥ずかしいことに遭遇しました。MySQL のパスワードを忘れてしまい、My...
序文オプションの連鎖演算子 (?.) を使用すると、チェーン内の各参照が有効であることを明示的に検証...
1. 新しいディスクを準備し、現在のルートパーティションと同じファイルシステムでフォーマットし、ディ...
序文この記事では主にMySQLでよく使われるツールに関する関連コンテンツを紹介し、皆さんの参考と学習...
フロントエンド開発者としては、IEの落とし穴は避けて通れません。他のブラウザはいいのにIEは壊れてい...
MySQL 5.5 のインストールと設定方法のグラフィックチュートリアルMySQL 5.5 のインス...
必ずデータをバックアップすることを忘れないでください。データは貴重なものです! ! !コンピュータモ...
目次1. WeChat Payを開く1.1 アフィリエイト加盟店番号1.2 加盟店番号を追加する1....
1. はじめにMySQL グループ レプリケーション (略して MGR) は文字通り MySQL グ...