2016年4月20日 星期三

JS: JavaScript 陣列也可這樣用

今天看到一段程式碼, 覺得很有趣於是吧它記錄下來, 如下
var p=[];
p.push('r='+Math.random().toString(36).substring(7));
p.push('w='+screen.width);
p.push('h='+screen.height);
var a=p.join('&');
alert("a = " + a);

p=[]; 是宣告一個空陣列
p.push  是於陣列內放入一個值
p.join('&') 是得到一個將陣列內容以 & 號串聯後的新字串
Math.random().toString(36).substring(7) 是什麼啊
我們知到 Math.random() 是得到一個0~1之間的數值, 加上.toString(36)後是將該數值轉換為36進位的字串, 36進位每個數值是0~9及a~z的字符, 所以由數值亂數轉換成字串亂數, 厲害吧! 因為0.xx的數值轉換為字串後還是以 0.xx 開頭所以再用.substring(7) 將前面幾個數字去掉, 成為名符其實的0~9及a~z所組合的亂字串

另外透過瀏覽器的 screen 物件可直接取得裝置螢幕的寛高資訊

沒有留言:

張貼留言