• 締切済み

ランダムイメージの処理、JavaScriptとCGI、どちらが速い?

現在、表示イメージとそのイメージのリンク先を、ランダムで表示するような処理を JavaScriptで書いてWEBサイトで使ってます。 今のところ要素数が5つくらいなのですが、今後10、20と増えた時の 読み込み時間が気になり始めました。 ランダムの要素は配列にnew Arrayしているのですが、 JavaScriptは配列のセットから表示まで全てブラウザで処理されますが CGIなら表示以外の部分はサーバ側でやってくれるので速かったりするのでは、と思っていて 実際はどうなのかを経験者の方にお聞きしたいです。 要点としては処理速度が速い方法を選択したいです。 ただし無料レンタルサーバがCGIしか使えないので、PHPなど他の言語は使えません。 よろしくお願いします。

みんなの回答

noname#86752
noname#86752
回答No.1

10や20ぐらいなら、どちらでもいい気がします。 私なら100とかになるとクライアントに処理させるのはちょっとどうだろう・・・と思うので、サーバ側で処理させます。 数がどんどん増えるのならサーバで処理したほうが後々良いんじゃないでしょうか。(クライアントには手が出せないので) 蛇足ですが、CGIとは言語ではなく仕組みのことです。 だから「CGIにはPerlしか使えない」というのは正しいのですが、「CGIしか使えないので、PHPなど他の言語は使えません」というのは言葉の使い方がちょっとおかしいです。 (PerlでもPHPでもCでもCGIという仕組みを使うことはできます)

mk_jmc
質問者

お礼

回答ありがとうございます。 やはりこれくらいの数じゃ同じですかねぇ~。 CGIが言語じゃないの件は、知ってましたが忘れてました(笑) CGIを言語みたいに表現してしまう癖が抜けきらないみたいです失礼しました。

関連するQ&A

  • CGIとJavascriptの違いについて

    Javascriptの初心者です、宜しくお願いします。 CGIでは「クライアントがサーバーに処理要求を出してサーバーが処理をし、クライアントにhtmlを返す」。 Javascriptでは「クライアントがサーバーに処理要求を出すが、サーバーは処理をしないで、クライアントにhtmlを返してサーバーが処理をして、ブラウザが表示させる」 と本には書いています。 CGIの場合、(1)サーバーからクライアントに返すhtmlとは、具体的にはどのような内容のものでしょうか。htmlファイルという意味でしょうか。(2)またサーバーがする処理とはどのようなものでしょうか。 また、Javascriptの場合、(1)サーバーの役割とはどのようなものでしょうか、(2)サーバーから返されるhtmlとはどのようなものでしょうか、CGIと同じ内容なのでしょうか。(3)この時のブラウザの役割、作業はCGIとはどのように違うのでしょうか。 以上、宜しくお願いします。

  • JavaScriptで2次元配列を扱う方法

    C言語を少しだけやっていました。 JavaScriptで2次元配列作りたいのですが、上手くいきません。 var array[5][5]; array[0][0] = 21; document.write(array[0][0]); ↑を実行しても「21」と表示されません。 new array()とか色々試しましたが上手くいかないので質問させていただきました。 教えてください!

  • Javascriptの配列の便利な処理

    Javascriptの配列で以下のような処理は自分で作らないといけないのでしょうか? var csv = 'A,B,C,D'; var ary new Array(); ary = csv.split(','); 要素の有無 true/false ary.exists('A') 結果 true 要素の削除 ary.delete('A') 結果 ary = ['B', 'C', 'D'];

  • ランダムJavascriptのblank表示

    リンク先のURLをランダムで表示させるため、下記の様に読み込みjavascriptファイルを使用していますが、ターゲットをブランク表示にできません。 windowopenなどと併用する必要があるのか、あまりjavascriptに詳しくないため、 記載箇所を具体的に教えて頂けると嬉しいです。 ■JSファイル側 urls=new Array(); //ランダムで表示したいURLを指定する urls[0]='http://www.・・・'; urls[1]='http://www.・・・; urls[2]='http://www.・・・'; function random() { a=Math.floor(Math.random()*urls.length); location.href=urls[a]; } ■HTMLページ側 <a href="JavaScript:random();">リンクテキスト</a>

  • JavaScript で配列の終わりまでループ

    JavaScript で配列の終わりまでループを回すには どうしたらいいのでしょう? perl であれば foreach (@test) {  処理 } ですよね。。。test.length; で要素数を取得する以外で 方法はないでしょうか。 new Array を使って、2次元配列(のようなもの) を 作って格納してしまったので、test[0][*], test[1][*] それぞれの要素数を調べたいのです。 現状だと test[0][*], test[1][*] 2つの合計値が 返ってしまいます。

  • Javascriptでこんな処理できますか?

    初心者必見!JavaScriptでできることと作れるものってどんなもの? https://www.sejuku.net/blog/3936 これをみるとJavascriptでできること WEBサイトに「動き」を加える 具体例1:HTML要素を追加 具体例2:CSSを変えて見た目を変更 イベント処理 JavaScriptは、マウスの動作やクリックされたという動作をイベントとして取得することができます。 そのイベントと紐づけて、いろいろな動作をつけることも可能です。 非同期通信 非同期通信を使ったアプリは、サーバーの応答を待たず次々と処理を行うことができます。 が出来るとききました。 そこで、 JavascriptでCSVの加工をする http://dripn-snip.com/2018/02/15/csv-js/ JavaScriptでCSVを扱うためには、5つのステップを経る必要があります。 1.ブラウザにCSVを読み込ませる 2.CSVをJavaScriptで扱える形式(配列)に変換する 3.配列を操作する 4.配列をCSVに戻す 5.ダウンロードする でのやり方のようにすれば、 自分のやりたい、 1.ブラウザに編集対象WEBサイトページを読み込ませる 2.ページ内テキストを取得し正規表現で取り出す。 3.取り出したテキストでーたからISDNコードを抽出し 4.Amazonで検索。検索結果を表示 こういう処理ももちろんできますよね? 頭が悪いのですが、努力はしようと考えているのでやろうと思っています。 家にあった、Javascriptの入門書をみていたら正規表現などの軽い解説があるのと DOMの解説、基本的な文法の解説だけだったのでいまいちピント来ませんでした。 アドバイスよろしくお願いします。

  • JavaからJavascriptの配列を出力したい

    JavaからJavascriptの配列を出力したいのですが、 appendした要素を区切り文字で区切って返す方法が わかりません。 <% StringBuffer js = new StringBuffer(); js.append("1"); js.append("2"); %> Javaで↑のように格納した後に、 下記のようにJavascriptの配列を出力したいです。 if(a = 1){ val=new Array("1,"2"); }

  • 配列変数に重複のないランダムな数字を入れて行くには?

    JavaScript初心者です。 配列にランダムな数字を入れたいのですが、 aRnd = new Array(); aRnd[0] = Math.floor(Math.random()*100); aRnd[1] = Math.floor(Math.random()*100); aRnd[2] = Math.floor(Math.random()*100); のようにやると各配列にはランダムな数字が入りますが、重複が発生する可能性があります。これを重複が発生しないようにしたいのですが、どのようにすればいいのでしょうか? なお、上記例では0~99までの数字を3つの配列にセットする方法となっていますが、配列数や数字の最大値は変更する可能性があるので、これも配慮したいと思います。 よろしくお願いいたします。

  • javascriptの配列をPHPで読み込みたいのですが・・・

    javascriptの配列を記述してあるファイル info.js があるとします data = new array(); data[0] = new array("data1","data2","data3"); data[1] = new array("data1","data2","data3"); data[2] = new array("data1","data2","data3"); ・ ・ ・ 上記の文で書かれた配列データを、PHP上で読み込み、新着一覧のような形でhtmlで表示したいのですが、方法が分かりません。 分かる方がいらっしゃいましたら教えて下さい。

    • ベストアンサー
    • PHP
  • JavaScriptでcgiの戻り値を受け取るには?

    JavaScriptの関数内でcgiを実行(submit)しています。 そのcgiの実行結果(cgiで記述しているexit 0などの0)を受け取る方法を教えてください。 受け取った値によって、alertでメッセージを表示させたいです。 cgiの実行からalertでメッセージを表示させるまでの処理を JavaScriptの1つの関数内で行いたいです。 よろしくお願いいたします。

専門家に質問してみよう