JavaScriptで GUID / UUID（ランダムな文字列）を生成するには


Windows系の開発でよく出てくるGUIDのようなランダムな文字列を生成したいです。

一定の長さ以上のランダムな文字列を生成するだけなので自作できると思いますが、jQueryなどの普及しているライブラリで提供されている関数、または標準的な生成方法があれば、そちらに倣いたいと思います。




UUIDの生成には、乱数を使う場合の仕様 [RFC4122](http://www.ietf.org/rfc/rfc4122.txt)
がありますので、できればそれに従うようにしましょう。

コードなら、こんな感じ。 ([gistより引用](https://gist.github.com/jcxplorer/823878))

[code]

    function uuid() {
      var uuid = "", i, random;
      for (i = 0; i < 32; i++) {
        random = Math.random() * 16 | 0;
    
        if (i == 8 || i == 12 || i == 16 || i == 20) {
          uuid += "-"
        }
        uuid += (i == 12 ? 4 : (i == 16 ? (random & 3 | 8) : random)).toString(16);
      }
      return uuid;
    }
    
[/code]




UUIDの生成には、乱数を使う場合の仕様 [RFC4122](http://www.ietf.org/rfc/rfc4122.txt)
がありますので、できればそれに従うようにしましょう。

コードなら、こんな感じ。 ([gistより引用](https://gist.github.com/jcxplorer/823878))

[code]

    function uuid() {
      var uuid = "", i, random;
      for (i = 0; i < 32; i++) {
        random = Math.random() * 16 | 0;
    
        if (i == 8 || i == 12 || i == 16 || i == 20) {
          uuid += "-"
        }
        uuid += (i == 12 ? 4 : (i == 16 ? (random & 3 | 8) : random)).toString(16);
      }
      return uuid;
    }
    
[/code]

