欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中實現(xiàn)PHP的打亂數(shù)組函數(shù)shuffle實例

 更新時間:2014年10月11日 11:42:36   作者:Artlover  
這篇文章主要介紹了JavaScript中實現(xiàn)PHP的打亂數(shù)組函數(shù)shuffle實例,本文用2種方法實現(xiàn)了類似PHP的打亂數(shù)組函數(shù)shuffle函數(shù),需要的朋友可以參考下

PHP 里面有個非常方便的打亂數(shù)組的函數(shù) shuffle() ,這個功能在許多情況下都會用到,但 javascript 的數(shù)組卻沒有這個方法,沒有不要緊,可以擴(kuò)展一個,自己動手,豐衣足食嘛。

請刷新頁面查看隨機(jī)排序效果。

復(fù)制代碼 代碼如下:

<script type="text/javascript">
//<![CDATA[
// 說明:為 Javascript 數(shù)組添加 shuffle 方法
 
var shuffle = function(v){
    for(var j, x, i = v.length; i; j = parseInt(Math.random() * i), x = v[--i], v[i] = v[j], v[j] = x);
    return v;
};
 
var a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
 
document.write("A = ", a.join(","), "<br />shuffle(A) = ", shuffle(a));
 
//]]>
</script>

輸出結(jié)果:

復(fù)制代碼 代碼如下:

A = 0,1,2,3,4,5,6,7,8,9

shuffle(A) = 1,5,0,9,2,3,6,8,4,7
A.shuffle() = 0,4,2,8,5,1,3,6,9,7

通過prototype 給數(shù)組添加一個方法:

復(fù)制代碼 代碼如下:

<script type="text/javascript">
//<![CDATA[
 
var a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
 
if (!Array.prototype.shuffle) {
    Array.prototype.shuffle = function() {
        for(var j, x, i = this.length; i; j = parseInt(Math.random() * i), x = this[--i], this[i] = this[j], this[j] = x);
        return this;
    };
}
 
document.write("A = ", a.join(","), "<br />A.shuffle() = ", a.shuffle());
 
//]]>
</script>

相關(guān)文章

  • Next.js應(yīng)用轉(zhuǎn)換為TypeScript方法demo

    Next.js應(yīng)用轉(zhuǎn)換為TypeScript方法demo

    這篇文章主要為大家介紹了Next.js應(yīng)用轉(zhuǎn)換為TypeScript方法demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • js獲得頁面的高度和寬度的方法

    js獲得頁面的高度和寬度的方法

    做一個彈出dialog時用到了取父頁面的寬度和高度的方法,需要的朋友可以參考下
    2014-02-02
  • JS實現(xiàn)樣式清新的橫排下拉菜單效果

    JS實現(xiàn)樣式清新的橫排下拉菜單效果

    這篇文章主要介紹了JS實現(xiàn)樣式清新的橫排下拉菜單效果,通過簡單的元素遍歷控制頁面元素的動態(tài)切換效果,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-10-10
  • bootstrap日歷插件datetimepicker使用方法

    bootstrap日歷插件datetimepicker使用方法

    這篇文章主要為大家詳細(xì)介紹了bootstrap日歷datetimepicker插件的使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • flv.js的具體使用教程

    flv.js的具體使用教程

    flv.js是一款優(yōu)秀的開源web端flv文件播放器,flv格式目前廣泛應(yīng)用在直播及音視頻錄制領(lǐng)域,本文就詳細(xì)的介紹一下flv.js的具體使用教程,感興趣的可以了解一下
    2023-05-05
  • Javascript的動態(tài)增加類的實現(xiàn)方法

    Javascript的動態(tài)增加類的實現(xiàn)方法

    下面小編就為大家?guī)硪黄狫avascript的動態(tài)增加類的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-10-10
  • 常見的javascript跨域通信方法

    常見的javascript跨域通信方法

    這篇文章主要介紹了常見的javascript跨域通信方法
    2015-12-12
  • js null undefined 空區(qū)別說明

    js null undefined 空區(qū)別說明

    js里面這三種東西總是讓人疑惑,特此整理一下
    2010-06-06
  • Asp.Net之JS生成分頁條的方法

    Asp.Net之JS生成分頁條的方法

    下面小編就為大家?guī)硪黄狝sp.Net之JS生成分頁條的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • 如何判斷鼠標(biāo)是否在DIV的區(qū)域內(nèi)

    如何判斷鼠標(biāo)是否在DIV的區(qū)域內(nèi)

    通過mouseover,mouseout來觸發(fā)事件,才判斷鼠標(biāo)是否在該區(qū)域。 但是這種方法的局限性就是,必須要觸發(fā)mouseover,或mouseout,mouseleave事件才能知道
    2013-11-11

最新評論