js 字节戳转换和时间戳转换

2017-08-23  本文已影响0人  一只机智的蜗牛

js中经常会遇到字节戳和时间戳的转换,在这里写了几个方法直接使用,一方面给有需要的人用,另一方面自己忘了的时候回来看!

1.字节戳转换格式

function bytesToSize(bytes) {

     if (bytes === 0)    return '0 B';

     var k = 1024;

     var sizes = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];

     var i = Math.floor(Math.log(bytes) / Math.log(k));

     return (bytes / Math.pow(k, i)).toFixed(2) + ' ' + sizes[i];     

     //return (bytes / Math.pow(k, i)).toPrecision(5) + ' '      + sizes[i];

}

2.时间戳转换字符串

方案一:

function DateFormat(data) {      //data=1503459375

     var newDate = new Date();      //Wed Aug 23 2017 11:36:15 GMT+0800 (中国标准时间)

     newDate.setTime(parseInt(data) * 1000);    //1503459375000

     var str = newDate.toISOString();    // "2017-08-23T03:36:15.000Z"

     var stra = str.substring(0, 10);    // "2017-08-23"

     var strb = newDate.toTimeString();    // "11:36:15 GMT+0800 (中国标准时间)"

     var substr = strb.substring(0, 8);    // "11:36:15"

     var string = stra + " " + substr;    //"2017-08-23 11:36:15"

     return string;  //"2017-08-23 11:36:15"

}

方案二:

function add0(m) {   return m<10  ? '0'+m : m  }

function format(data){       //data有两种情况,10位数的和13位数的

     var parseData = parseInt(data).toString().length>10 ? parseInt(data) : new Date().setTime(parseInt(data) * 1000) ;

     var time = new Date(parseData);    // Wed Aug 23 2017 11:36:15 GMT+0800 (中国标准时间)

     var y = time.getFullYear();     //2017

     var m = time.getMonth()+1;     //8

     var d = time.getDate();     //23

     var h = time.getHours();     //11

     var mm = time.getMinutes();     //36

     var s = time.getSeconds();      //15

     return  y+'-'+add0(m)+'-'+add0(d)+' '+add0(h)+':'+add0(mm)+':'+add0(s);     // "2017-08-23 11:36:15"

}

上一篇下一篇

猜你喜欢

热点阅读