摘要:有用的代碼片段小數(shù)取整按位運(yùn)算符直接去掉小數(shù),向下取整,返回的數(shù)小于等于原來的數(shù)。布爾值返回或,返回,數(shù)字直接返回,返回,對于字符串,將其轉(zhuǎn)換為十進(jìn)制數(shù)值,會忽略前面的進(jìn)制除外,空字符串返回,浮點(diǎn)數(shù)會返回浮點(diǎn)數(shù)值。
JavaScript有用的代碼片段 小數(shù)取整
const x = 1.234; ~~x //1 x >> //1 x | 0 //1 Math.floor(x) //1 const y = -1.4; x >> //-1 Math.floor(y) //-2
按位運(yùn)算符直接去掉小數(shù),Math.floor()向下取整,返回的數(shù)小于等于原來的數(shù)。生成n位隨機(jī)數(shù)
let getRandom = n => Math.random().toString().slice(-n); getRandom(6) //6位隨機(jī)數(shù)生成16進(jìn)制顏色
let colorCode = "#" +("00000" +(Math .random()* 0x1000000 << 0).toString(16)).slice(- 6);n到m間隨機(jī)整數(shù)
let randomNum = (n,m) => Math.floor(Math.random()*(m-n) + n); randomNum(2,10) //2-10之間的整數(shù)
生成n到m間的隨機(jī)整數(shù),不包括m,n和m可以為負(fù)數(shù)。駝峰命名轉(zhuǎn)下劃線
let humpToUnderline = str => str.match(/^[a-z][a-z0-9]+|[A-Z][a-z0-9]*/g).join("_").toLowerCase(); humpToUnderline("helloWorld"); //hello_worldurl參數(shù)轉(zhuǎn)json
let urlToJson = url => { let json = {}; if (!!!url) return json; let data = url.split("?")[1] ? url.split("?")[1].split("&") : []; for(let i=0; i獲取url中的參數(shù) let getUrlData = name => { let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); let r = window.location.search.substr(1).match(reg); if (r != null) return decodeURI(r[2]); return null; }n維數(shù)組轉(zhuǎn)1維數(shù)組let flatten = arr => JSON.parse(`[${JSON.stringify(arr).replace(/[|]/g, "")}]`); let flatten = arr => arr.reduce((a, b) => a.concat(Array.isArray(b) ? flatten(b) : b), []); let flatten = a => Array.isArray(a) ? [].concat(...a.map(flatten)) : a; flatten([1,[2,3,[3,4],5]) //[1,2,3,4,5]n維數(shù)組展開成字符串let arr = [1,3,[4,[72,"a","d"],3,[6,"c"],d]]; arr+""; arr.toString(); arr.join(); JSON.stringify(arr).replace(/[|]/g,""); //"1,3,4,72,"a","d",3,6,"c""時間格式化//時間格式化 function format1(x, y) { let i = 0; var z = { y: x.getFullYear(), M: x.getMonth() + 1, d: x.getDate(), h: x.getHours(), m: x.getMinutes(), s: x.getSeconds() }; return y.replace(/(y+|M+|d+|h+|m+|s+)/g, function(v) { console.log(++i); return ((v.length > 1 ? "0" : "") + eval("z." + v.slice(-1))).slice(-(v.length > 2 ? v.length : 2)) }); } format1(new Date(), "yyyy-MM-dd h:m:s"); //2018-01-22 9:38:10統(tǒng)計文字個數(shù)//統(tǒng)計文字個數(shù) function wordCount(data) { var pattern = /[a-zA-Z0-9_u0392-u03c9]+|[u4E00-u9FFFu3400-u4dbfuf900-ufaffu3040-u309fuac00-ud7af]+/g; var m = data.match(pattern); var count = 0; if( m === null ) return count; for (var i = 0; i < m.length; i++) { if (m[i].charCodeAt(0) >= 0x4E00) { count += m[i].length; } else { count += 1; } } return count; } var text = "統(tǒng)計文字個數(shù)"; // console.log(wordCount(text)); // 6格式化數(shù)字//法一 function formatNum (str) { return str.replace(/B(?=(d{3})+(?!d))/g, ","); } //法二 function formatNum (str) { return str.split("").reverse().reduce((prev, next, index) => { return ((index % 3) ? next : (next + ",")) + prev }) }檢測質(zhì)數(shù)function isPrime(n) { return !(/^.?$|^(..+?)1+$/).test("1".repeat(n)) }統(tǒng)計字符出現(xiàn)的次數(shù)function strTimes (str) { return str.split("").reduce((p,n) => (p[n]++ || (p[n]=1) ,p), {}); }評級let grade = rate => "★★★★★☆☆☆☆☆".slice(5 - rate, 10 - rate);字符串類型的數(shù)字轉(zhuǎn)數(shù)字let a = "1"; +a //1;+a 可以理解為Number(a),將一個變量轉(zhuǎn)成數(shù)字。布爾值返回0或1,undefined返回NaN,數(shù)字直接返回,null返回0,對于字符串,將其轉(zhuǎn)換為十進(jìn)制數(shù)值,會忽略前面的0(16進(jìn)制除外),空字符串返回0,浮點(diǎn)數(shù)會返回浮點(diǎn)數(shù)值。其他格式字符串(無論是否數(shù)字開頭,返回NaN,字符串中好幾個小數(shù)點(diǎn),返回NaN。數(shù)組去重復(fù)[...new Set(arr)]更多更詳細(xì)的數(shù)組去重方法。
獲取時間戳(new Date()).getTime(); (new Date).getTime(); new Date().getTime(); +new Date(); Date.now();
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/107756.html
摘要:使用高亮類似的擴(kuò)展更強(qiáng)大的高亮擴(kuò)展,具有更多功能。為了檢查和檢查響應(yīng),使用了之類的工具。在這里獲取這兩個擴(kuò)展自動閉合標(biāo)記和自動重命名標(biāo)記。類似的擴(kuò)展顯示提交歷史的精美圖表等等。 想閱讀更多優(yōu)質(zhì)文章請猛戳GitHub博客,一年百來篇優(yōu)質(zhì)文章等著你! Quokka.js Quokka.js 是一個用于 JavaScript 和 TypeScript 的實(shí)時運(yùn)行代碼平臺。這意味著它會實(shí)時運(yùn)行...
摘要:來源編程精解中文第三版翻譯項(xiàng)目原文譯者飛龍協(xié)議自豪地采用谷歌翻譯編寫易于刪除,而不是易于擴(kuò)展的代碼。模塊之間的關(guān)系稱為依賴關(guān)系。用于連接模塊的最廣泛的方法稱為模塊。模塊的主要概念是稱為的函數(shù)。 來源:ApacheCN『JavaScript 編程精解 中文第三版』翻譯項(xiàng)目原文:Modules 譯者:飛龍 協(xié)議:CC BY-NC-SA 4.0 自豪地采用谷歌翻譯 編寫易于刪除,而不是易于擴(kuò)...
摘要:博客原文同步安裝插件安裝分兩部分,一個是插件本身,另外一個是代碼片段倉庫。一般來說把默認(rèn)的代碼片段倉庫下載下來按需修改后上傳到自己的即可。這時需要使用參數(shù)選項(xiàng)使用正則代碼片段通常寫代碼的時候需要使用等來打印上下文中的變量。 博客原文同步 安裝 Ultisnips 插件安裝分兩部分,一個是 ultisnips 插件本身,另外一個是代碼片段倉庫。一般來說把默認(rèn)的代碼片段倉庫下載下來按需修改...
摘要:在老的中其值為,在最新的中為,即空單元數(shù)組。在老中,相當(dāng)于顯示使用的方式創(chuàng)建長度為的數(shù)組。判斷是否為中文判斷是否為常見中文符號中文標(biāo)點(diǎn)符號,。 本文內(nèi)容來自知乎《有哪些短小卻令人驚嘆的 JavaScript 代碼?》和文章《這些JavaScript編程黑科技,裝逼指南,高逼格代碼,讓你驚嘆不已》,同時也匯集了部分網(wǎng)上其它來源的內(nèi)容。 浮點(diǎn)數(shù)取整 const x = 123.4545; ...
摘要:相當(dāng)于的使用返回一個函數(shù),返回一個調(diào)用原始函數(shù)的。你可以省略來使用窗口的默認(rèn)值。第一個最左邊的函數(shù)可以接受一個或多個參數(shù)其余的功能必須是一元的。使用刪除任何空字符串。如果是位數(shù)的顏色代碼,則先轉(zhuǎn)換為位數(shù)字版本。轉(zhuǎn)顏色將的值轉(zhuǎn)換為顏色代碼。 原文基礎(chǔ)上增加了其它方法以及注釋等,進(jìn)行了小幅度修改,便于閱讀注意箭頭函數(shù)有無{}會影響是否需要再return 原文地址 Adapter 適配器,以...
閱讀 3159·2021-11-22 14:45
閱讀 3311·2019-08-29 13:11
閱讀 2310·2019-08-29 12:31
閱讀 928·2019-08-29 11:21
閱讀 2998·2019-08-29 11:09
閱讀 3625·2019-08-28 18:11
閱讀 1427·2019-08-26 13:58
閱讀 1280·2019-08-26 13:27