1. function getDateTimeStamp(dateStr) { //将字符串时间转换为时间戳
    2. return Date.parse(("" + dateStr).replace(/-/gi, "/"));
    3. }
    4. function getDateDiff(dateStr) { //将时间转换为xx之前
    5. var publishTime = getDateTimeStamp(dateStr) / 1000,
    6. d_seconds, d_minutes, d_hours, d_days,
    7. timeNow = parseInt(new Date().getTime() / 1000),
    8. d,
    9. date = new Date(publishTime * 1000),
    10. Y = date.getFullYear(),
    11. M = date.getMonth() + 1,
    12. D = date.getDate(),
    13. H = date.getHours(),
    14. m = date.getMinutes(),
    15. s = date.getSeconds();
    16. //小于10的在前面补0
    17. if (M < 10) {
    18. M = '0' + M;
    19. }
    20. if (D < 10) {
    21. D = '0' + D;
    22. }
    23. if (H < 10) {
    24. H = '0' + H;
    25. }
    26. if (m < 10) {
    27. m = '0' + m;
    28. }
    29. if (s < 10) {
    30. s = '0' + s;
    31. }
    32. d = timeNow - publishTime;
    33. d_days = parseInt(d / 86400);
    34. d_hours = parseInt(d / 3600);
    35. d_minutes = parseInt(d / 60);
    36. d_seconds = parseInt(d);
    37. if (d_days > 0 && d_days < 2) {
    38. return d_days + '天前';
    39. } else if (d_days <= 0 && d_hours > 0) {
    40. return d_hours + '小时前';
    41. } else if (d_hours <= 0 && d_minutes > 0) {
    42. return d_minutes + '分钟前';
    43. } else if (d_seconds < 60) {
    44. if (d_seconds <= 0) {
    45. return '刚刚';
    46. } else {
    47. return d_seconds + '秒前';
    48. }
    49. } else if (d_days >= 2 && d_days < 30) {
    50. return M + '-' + D + ' ' + H + ':' + m;
    51. } else if (d_days >= 30) {
    52. return Y + '-' + M + '-' + D + ' ' + H + ':' + m;
    53. }
    54. }