1

ドメインを含む文字列があるとします。

var domain = "http://google.com";

スクリプトを実行するたびに、このスクリプトをランダムに2つの部分に分割したいと思います。

したがって、初めて実行すると、次のような結果が得られる可能性があります。

part 1: http://go
part 2: ogle.com

2回目の実行では、次のようになります。

part 1: http://goog
part 2: le.com

毎回完全にランダムに。

どうすればこれを達成できますか?

4

2 に答える 2

2

0から文字列の長さまでの乱数を生成します。そこから部分文字列を取得します。

(function () {

    "use strict";

    var domain, number, pieces;

    domain = "http://google.com";
    number = Math.ceil(Math.random() * (domain.length - 1));
    pieces = [domain.substring(number, -number), domain.substring(number)];

    console.log(pieces);

}());​

デモ: http: //jsfiddle.net/KTP​​Xt /

于 2012-11-18T07:45:29.303 に答える
0

ねえ、これが私がそれをする方法です..多分それはあなたのためにも働くでしょう。

        var domain = "http://google.com";

        var lengthOfdomain = domain.length;

        var post1 = Math.floor((Math.random()*lengthOfdomain)+1);

        var post2 = 0;

        if(post1==lengthOfdomain){
           if((lengthOfdomain%2)==0){
              post1 = lengthOfdomain/2;
              post2 = post1;
            }else{
               post1 = (lengthOfdomain-1)/2;
               post2 = post1+1;
            }
        }else{
            post2 = lengthOfdomain-post1;
        }


        if(post1>post2){
           var dom1 = domain.substr(0,post2);
           var dom2 = domain.substr(post2,post1);
        }else{
           var dom1 = domain.substr(0,post1);
           var dom2 = domain.substr(post1,post2);
        }

        alert(dom1+' + '+dom2);
于 2012-11-18T08:04:38.010 に答える