now

    @@ -12,15 +12,31 @@ // https://en.wikipedia.org/wiki/Unix_time // https://en.wikipedia.org/wiki/Epoch_%28reference_date%29#Computing -// ES6 -window.prompt('timestamp', Math.trunc(Date.now() / 1000)); -// ES5 -window.prompt('timestamp', Date.now() / 1000 | 0); -// ES3< -window.prompt('timestamp', (new Date).getTime() / 1000 | 0); -window.prompt('timestamp', +new Date / 1000 | 0); +(function () { + 'use strict'; -void 0; + var now = (function () { + // ES6 + if (Math.trunc) { + return Math.trunc(Date.now() / 1000); + } + // ES5 + if (Date.now()) { + return Date.now() / 1000 | 0; + } + // ES3< + if (Date.prototype.getTime) { + return (new Date).getTime() / 1000 | 0; + } + if (Date.prototype.valueOf) { + return (new Date).valueOf() / 1000 | 0; + // indirect valueOf call + //return +new Date / 1000 | 0; + } + })(); + + window.prompt('timestamp', now); +})(); // truncate idioms by bit op // +2.1 | 0 === ~~+2.1 // 2
  • // @title now
    // @description show Unix/POSIX/epoch time
    // @include http://*
    // @include https://*
    // @license CC0 Univ PD https://creativecommons.org/publicdomain/zero/1.0/
    // @javascript_url
    
    // via
    // http://let.hatelabo.jp/escitus/let/hLHXgqHE58JT
    
    // c.f.
    // https://en.wikipedia.org/wiki/Unix_time
    // https://en.wikipedia.org/wiki/Epoch_%28reference_date%29#Computing
    
    (function () {
        'use strict';
    
        var now = (function () {
            // ES6
            if (Math.trunc) {
                return Math.trunc(Date.now() / 1000);
            }
            // ES5
            if (Date.now()) {
                return Date.now() / 1000 | 0;
            }
            // ES3<
            if (Date.prototype.getTime) {
                return (new Date).getTime() / 1000 | 0;
            }
            if (Date.prototype.valueOf) {
                return (new Date).valueOf() / 1000 | 0;
                // indirect valueOf call
                //return +new Date / 1000 | 0;
            }
        })();
    
        window.prompt('timestamp', now);
    })();
    
    // truncate idioms by bit op
    // +2.1 | 0 === ~~+2.1  //  2
    // +2.6 | 0 === ~~+2.6  //  2
    // -2.1 | 0 === ~~-2.1  // -2
    // -2.6 | 0 === ~~-2.6  // -2
    
    
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2017/05/19 02:59:56 - 2017-05-19
  2. 2017/05/19 02:57:51 - 2017-05-19
  3. 2017/05/19 02:57:27 - 2017-05-19
  4. 2017/05/18 06:42:51 - 2017-05-18
  5. 2017/05/17 14:38:27 - 2017-05-17
  6. 2017/05/17 14:33:44 - 2017-05-17
  7. 2017/05/17 14:11:43 - 2017-05-17