欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

怎么通過(guò)JavaScript函數(shù)生成字符串的所有排列組合

本篇內(nèi)容主要講解“怎么通過(guò)JavaScript函數(shù)生成字符串的所有排列組合”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“怎么通過(guò)JavaScript函數(shù)生成字符串的所有排列組合”吧!

成都創(chuàng)新互聯(lián)公司是專(zhuān)業(yè)的豐澤網(wǎng)站建設(shè)公司,豐澤接單;提供網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行豐澤網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!

今天給大家介紹怎么通過(guò)一個(gè)JavaScript函數(shù)來(lái)生成字符串的所有排列組合,那么所謂排列組合就是組合學(xué)中最基本的概念了。

首先來(lái)給大家簡(jiǎn)單介紹排列組合:

1、排列就是指從給定個(gè)數(shù)的元素中取出指定個(gè)數(shù)的元素進(jìn)行排序。

2、組合則是指從給定個(gè)數(shù)的元素中僅僅取出指定個(gè)數(shù)的元素,不考慮排序。

而排列組合的中心問(wèn)題就是研究指定要求的排列和組合可能出現(xiàn)的情況總數(shù)。

想必大家對(duì)排列組合都有所了解了。

下面我們就通過(guò)javascript代碼來(lái)實(shí)現(xiàn)計(jì)算字符串的所有排列組合情況。

完整代碼如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<script>
    //編寫(xiě)一個(gè)JavaScript函數(shù)來(lái)生成字符串的所有組合
 function substrings(str1)
    {
        var array1 = [];
        for (var x = 0, y=1; x < str1.length; x++,y++)
        {
            array1[x]=str1.substring(x, y);
        }
        var combi = [];
        var temp= "";
        var slent = Math.pow(2, array1.length);

        for (var i = 0; i < slent ; i++)
        {
            temp= "";
            for (var j=0;j<array1.length;j++) {
                if ((i & Math.pow(2,j))){
                    temp += array1[j];
                }
            }
            if (temp !== "")
            {
                combi.push(temp);
            }
        }
        console.log(combi.join("\n"));
    }

    substrings("dog");

    </script>
</body>
</html>

這里我們對(duì)一個(gè)示例字符串dog進(jìn)行排列組合,查看生成結(jié)果如下:

怎么通過(guò)JavaScript函數(shù)生成字符串的所有排列組合

在上述代碼中,我們用了幾個(gè)關(guān)鍵的方法,如下:

1、pow()方法:用于計(jì)算x的y次冪,語(yǔ)法是“Math.pow(x,y)”。

2、push()方法:可向數(shù)組的末尾添加一個(gè)或多個(gè)元素,并返回新的長(zhǎng)度,語(yǔ)法是“array.push(item1, item2, ..., itemX)”。

3、join()方法:用于把數(shù)組中的所有元素放入一個(gè)字符串,元素是通過(guò)指定的分隔符進(jìn)行分隔的,語(yǔ)法是“arrayObject.join(separator)”。

到此,相信大家對(duì)“怎么通過(guò)JavaScript函數(shù)生成字符串的所有排列組合”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!

分享標(biāo)題:怎么通過(guò)JavaScript函數(shù)生成字符串的所有排列組合
本文URL:http://www.chinadenli.net/article26/gpiccg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄網(wǎng)站排名定制開(kāi)發(fā)云服務(wù)器微信公眾號(hào)搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

營(yíng)銷(xiāo)型網(wǎng)站建設(shè)