js時間日期排序程式碼例項
分享一段程式碼例項,它實現了時間日期排序效果。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼var arr = ['2016-09-09', '2015-12-30', '2016-01-04', '2011-09-12']; Array.prototype.sortFn = function() { var arr2 = [] var json = {}; for (var index = 0, len = this.length; index < len; index++) { json[new Date(this[index]).getTime()] = this[index]; arr2.push(new Date(this[index]).getTime()); } arr2.sort(); for (var j = 0; j < arr2.length; j++) { this[j] = json[arr2[j]]; } return this; } console.log(arr.sortFn())
上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。
一.程式碼註釋:
(1).var arr = ['2016-09-09', '2015-12-30', '2016-01-04', '2011-09-12'],陣列儲存的是要排序的時間日期。
(2).Array.prototype.sortFn = function() {},為陣列物件例項新增一個例項方法,它實現了排序效果。
(3).var arr2 = [],宣告一個陣列用來宣告時間戳。
(4).var json = {},宣告一個物件,物件屬性是時間戳,屬性值是時間日期在原陣列中的索引。
(5).for (var index = 0, len = this.length; index < len; index++) {},通過for迴圈進行遍歷。
(6).json[new Date(this[index]).getTime()] = this[index],時間戳作為屬性,日期作為屬性值。
(7).arr2.push(new Date(this[index]).getTime()),把時間戳壓入陣列。
(8).arr2.sort(function sortFunction(a,b){
return a-b;
}),實現陣列值由小到大排序。
(9).for (var j = 0; j < arr2.length; j++) {
arr[j] = json[arr2[j]];
}
(10).for (var j = 0; j < arr2.length; j++) {
this[j] = json[arr2[j]];
},由於arr2中的時間戳是由小到大排序的,所以arr陣列的內容也會被重置為由小到大排序。
(11).return this,可以實現鏈式呼叫。
二.相關閱讀:
(1).prototype參閱javascript prototype原型一章節。
(2).getTime()參閱javascript getTime()一章節。
(3).push()參閱javascript push()一章節。
(4).sort()參閱javascript sort()一章節。
相關文章
- 時間日期格式化程式碼例項
- PHP的時間日期與例項應用:日曆核心程式PHP
- JS中排序的用法和例項JS排序
- JS 預編譯程式碼例項分析JS編譯
- 2個例項幫你弄清Python的時間和日期問題Python
- jquery.idTabs.min.js選項卡程式碼例項jQueryJS
- js根據時間排序JS排序
- JavaScript倒數計時程式碼例項JavaScript
- 直播平臺原始碼,js 時間戳轉為日期格式原始碼JS時間戳
- js獲取北京時間程式碼JS
- C# ling to sql 取多條記錄最大時間的例項程式碼C#SQL
- 陪玩原始碼,與時間、日期相關的程式碼分析原始碼
- Js之設定日期時間 判斷日期是否在範圍內JS
- dom操作程式碼例項
- css梯形程式碼例項CSS
- JS對日期、時間校驗;相容IE new Date()JS
- js時間戳與日期格式的相互轉換JS時間戳
- 使用moment.js輕鬆管理日期和時間JS
- 商品搶購倒數計時效果程式碼例項
- 網頁倒數計時跳轉程式碼例項網頁
- 整理 js 日期物件的詳細功能,使用 js 日期物件獲取具體日期、昨天、今天、明天、每月天數、時間戳等,以及常用的日期時間處理方法JS物件時間戳
- iOS日期時間iOS
- 日期和時間
- 日期時間類
- Java學習之7種排序演算法的完整例項程式碼Java排序演算法
- js時間物件:獲取當前時間(格式化)- 程式碼篇JS物件
- 影片直播系統原始碼,例項原始碼系列-設定系統時間原始碼
- JavaScript in運算子程式碼例項JavaScript
- 設計模式例項程式碼設計模式
- table表格美化程式碼例項
- 純css tab選項卡程式碼例項CSS
- jQuery tab選項卡效果程式碼例項jQuery
- 日期和時間格式
- JavaScript 時間日期操作JavaScript
- Python 日期和時間Python
- Java日期和時間Java
- datetime日期和時間
- js正則格式化日期時間自動補0JS
- canvas刮刮樂程式碼例項Canvas