JavaScript正變得越來越流行,它已經成為前端開發的第一選擇,并且利用基于JavaScript語言的NodeJS,我們也可以開發出高性能的后端服務,甚至我還看到在硬件編程領域也出現了JavaScript的身影。JavaScript正在逐漸進化為一門全能的開發語言。
但用好JavaScript并不容易,你除了需要掌握它的語法并知道如何寫出高質量的代碼之外,還需要了解如何解決那些幾乎在每個項目中都會遇到的需求場景,比如:判斷日期,高亮文本,限制字符數等等,有很多第三方庫可以解決這些問題,但這些庫可能并非只是為解決這一個問題而創建的,這意味著你需要引入了很多無關的代碼,這將使你的整個系統變得臃腫,而且也會影響到系統的性能。我的做法是,收集和使用那些常見的JavaScript代碼段,并在需要時,盡可能首先使用它們。下面便是我收集的10段實用JavaScript代碼,基于它們你還可以創造出更強大的JS插件或功能函數。
JavaScript中自帶的日期函數還是太過簡單,很難滿足真實項目中對不同日期格式進行解析和判斷的需要。JQuery也有一些第三方庫來使日期相關的處理變得簡單,但有時你可能只需要一個非常簡單的函數,而不想引入一個龐大的第三方庫。這時,你可以使用下面這段日期校驗代碼,它允許你自定義日期格式并進行日期有效性的校驗。
function isValidDate(value, userFormat) { // Set default format if format is not provided userFormat = userFormat || 'mm/dd/yyyy'; // Find custom delimiter by excluding // month, day and year characters var delimiter = /[^mdy]/.exec(userFormat)[0]; // Create an array with month, day and year // so we know the format order by index var theFormat = userFormat.split(delimiter); // Create array from user date var theDate = value.split(delimiter); function isDate(date, format) { var m, d, y, i = 0, len = format.length, f; for (i; i < len; i++) { f = format[i]; if (/m/.test(f)) m = date[i]; if (/d/.test(f)) d = date[i]; if (/y/.test(f)) y = date[i]; } return ( m > 0 && m < 13 && y && y.length === 4 && d > 0 && // Check if it's a valid day of the month d <= (new Date(y, m, 0)). getDate () ); } return isDate(theDate, theFormat); }
使用方法:
下面這個調用返回false,因為11月份沒有31天
相信看了本文案例你已經掌握了方法,更多精彩請關注Gxl網其它相關文章!
推薦閱讀:
JS的Arrary方法
JavaScript運行機制之Event Loop
JavaScript運行機制之為什么JavaScript是單線程
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。