タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

javascriptとJavascriptとgolfに関するmoozのブックマーク (4)

  • Byte saving techniques

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    Byte saving techniques
  • delete blank lines - nn_xの日記

    相変わらずjavascript golfがはやってんな。twitterでもいろいろやり取りされてて、なかなか楽しそうだ。そんな中、delete blank linesの記録が更新された。33Bだ。 もともと、この→https://bugzilla.mozilla.org/show_bug.cgi?id=355827バグのために、readline()の空行(blank lines)とEOFが区別できず、それを回避したコードで35Bだった。35Bはこんな↓感じだ。 for(r=readline;l=r()||r();)print(l) EOFと空行が区別できると、 for(;l=readline(),l!=null;)〜 といった書き方ができる。さらに、 for(;l=readline(),l+0;)〜 といった書き方も可能だ。これは、l が空文字列の時は、''+0 は、'0'という文字列にな

    delete blank lines - nn_xの日記
    mooz
    mooz 2010/03/11
    null + 0 => 0, undefined + 0 => NaN
  • js.golf.tips[1] - ellaneous

    ビット演算系のイディオム。ゴルフ以外でも有用? Math.floor(i) → i|0 // iはint32の範囲内。(10) if(i!=-1) → if(~i) // ~-1 === 0 を利用。(3) (i+1)/2 → -~i/2 (i-1)/2 → ~-i/2 // 優先順位を変えて括弧を外す。 (2) +('0x'+h) → '0x'+h|0 // 16進文字列を数値にする場合。上と同様括弧が外せる。 (1)

    js.golf.tips[1] - ellaneous
    mooz
    mooz 2010/03/04
    ビット演算
  • js.golf.tips[0] - ellaneous

    anarchy golf*1用の書き方をいくつか。 各コメント末の括弧内は稼いだバイト数。 i=0,$=readline() → $=readline(i=0) // 引数を取らない関数に何か渡しても怒られない。(1) print(a.join(' ')) → print.apply(0,a) // printに渡した引数が空白区切りで出力されることを利用。(2) for(i=0;i<s.length;i++) → for(i=0;s[i];i++) // sは文字列もしくは中身が全てtrue相当の配列。(6) (new Date).getTime()%3 → new Date%3 //ランダムで 0,1,2 を取得したい場合。用途は言わずもがな。(12) *1:JavaScriptの処理系はSpiderMonkeyのC実装。

    js.golf.tips[0] - ellaneous
  • 1