2011-08-29 52 views
0

我使用的是JavaScript函數生成一個隨機字符串:在Javascript異步真正的隨機字符串

function S4() { 
    return (((1+Math.random())*0x10000)|0).toString(16).substring(1); 
} 

function guid() { 

    /*$.ajax({ 
     type: "GET", 
     url: "uuid.php", 
     cache: false, 
     success: function(html){ 
      return html; 
     } 
    });*/ 

    return (S4()+S4()+S4()+S4()); 
} 

我想讓它利用PHP的UUID庫,我已經找到了,問題是我需要它運行在JavaScript。我使用guid()函數很多,我一直試圖想到一個優雅的方式來抓取uuid,我要求使用ajax對象(註釋如上)。每次只打印隨機uuid的uuid頁面都位於本頁的旁邊。我不想讓這個請求同步,因爲就像我說的那樣,我使用了它很多,並且希望每次這個事情發出請求時都不要停下來。或者也許有一種我可以使用jQuery的方法,可以快速且不會妨礙性能?

我不反對改變一些東西,就像這裏的最佳做法,以獲得負載uuid?但是我生成的UUID數量是完全動態的,並且取決於用戶。

謝謝!

+0

你是什麼意思「坐在旁邊本地此頁」?應用於頁面時,「next to」關係沒有意義。另外,您使用的是什麼GUID?你在用什麼PHP庫?根據使用情況,生成GUID的技術可能不適用。 – outis

+0

[如何在Javascript中創建一個GUID/UUID?](http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript) –

回答

1

如何增加一個回調參數的GUID()函數,其中可以賦值的東西:

function guid(callback) { 
    $.ajax({ 
     type: "GET", 
     url: "uuid.php", 
     cache: false, 
     success: function(html){ 
      callback(html); 
     } 
    }); 
} 

var value; 

guid(function (result) { 
    value = result; 
});