電話番号の確認
関数isPhone(TEL){ VARの REGX = / ^ 1 [34578] \ dの{9} $ / 。 戻りregx.test(TEL) }
IDカード認証
関数isCardNo(数){ VARの REGX = /(^ \ D {15} $)|(^ \ D {18} $)|(^ \ D {17}(\ D | X | X)$)/ 。 戻りregx.test(番号)。 }
桁区切り
関数parseToMoney(NUM){ NUM = parseFloatは(num.toFixed(3))。 [整数、小数] = String.prototype.split.callせ(NUM、 ''); 整数= integer.replace(/ \ D(=(\ D {3})+ $)/ G '$&、'?)。 リターン整数+(小数点以下(+ 10進数)? '': ''); }
文字と数字のほとんどは、検索文字列に表示されます。
STRは、LET 'abdhabdfedsaaadebasを' = ; せNUM = 0、文字 '=' ; せOTHER = str.split ..( '')ソート()( ''参加) にconsole.log(OTHER); Reはせ = /( \ W)\ + 1 /。G; other.replace(RE、($ 0、$ 1)=> { IF(NUM <$ 0 .LENGTH){ NUM = $ 0 .LENGTH; CHAR。= $ 1 ; } }) はconsole.log(文字の`$ {STR}文字列は、{$最も頻繁であるチャー } $ {NUM})times`がありました。
キャメルケースに
関数f(S){ 戻りs.replace(/ - \ W / gで、関数(X){ 戻りx.slice(1).toUpperCase(); }) }
テンプレートエンジンの実装
機能レンダリング(テンプレート、データ){ CONSTをREG = / \ {\ {(\ + W)\} \} /; // テンプレート列正規 IF(reg.test(テンプレート)){ // テンプレート決意テンプレートが存在する場合文字列 のconst名= reg.exec(テンプレート)[1]; //は、まず現在のテンプレートのテンプレート文字列フィールドの検索 テンプレート= template.replaceを(REG、データ[名前]); // 最初のテンプレートレンダリングストリングが 返さレンダリング(テンプレート、データ); // 再帰構造のレンダリングとレンダリング返す } 戻りテンプレート; }
URLのparamsオブジェクトを解析
関数parseParams(URL){ CONST paramsStr = /.+\?(.+)$/.exec(url)[1]; // か?取り出された次の文字列 、CONST = paramsArr paramsStr.split( '&')を // によって&に格納された配列分割後に取り出し紐 せparamsObj = {}; paramsArr.forEach(PARAM => { IF( 。/ = /テスト(PARAM)){ // プロセスパラメータの値が有する ; [キー、ヴァル] = param.split( '=')させ // セグメンテーションのキーと値 のval =は、decodeURIComponent(ヴァル); // 復号 ヴァルを?= /^\d+$/.test(val)parseFloatは(ヴァル):ヴァル; // デジタルするかどうかを決定します IF(paramsObj.hasOwnProperty(キー)){ // オブジェクトがキーを持っている場合、加算値 paramsObj [キー] = [] .concat([キー] paramsObj、ヴァル); } 他 { // これはオブジェクトのキーではない場合、作成キーセット値 = [キー] paramsObj ヴァル; } } そうでなければ { // プロセスないパラメータ値 paramsObj [paramは] = trueと; } }) 戻りparamsObjを; }ありません