元スレ+ JavaScript の質問用スレッド vol.94 +
JavaScript覧 / PC版 /みんなの評価 :
201 = :
>>198
遅い原理を説明できるなら説明してから指摘して欲しいと思う。
ただ単純に「遅い」といわれても検証する気にもなれないんだよね。
代替案を掲示してもらえれば印象も変わると思うんだけど。
メモリリーク系の指摘は割とまとも(間違ってない)なことが多い気がする。
表現が乱暴すぎる事も多いけどね。結局は指摘の仕方に尽きると思う。
202 = :
で?
203 = :
メモリーリークの話は、今ここでその話しなくて良いじゃろって感じだな。正しくても。
質問者は解決策を求めてるんであって、出てくるコードそのままコピペして使うんじゃないだろうし。
たぶん。
204 = :
>>201
俺にもくれよ
205 = :
>>200
先にソートしたのを用意するのはずるくね? w
任意のclass名だったとしても、事前に抽出してclass名の配列をつくって
(質問者の好みの順序で)ソートしてやればいいからいいんだけれど。
206 = :
>>205
class名のパースまで手を付けると"hoge1"と"a1"の区別がつかないんじゃないか?
要求仕様は勝手に想像で書いてるが、質問者はそこまでの汎用性を求めていないように受け取れた
207 = :
あらよっとhttp://jsfiddle.net/SC3Bx/1/
208 = :
少し改善した
http://jsfiddle.net/SC3Bx/2/
209 = :
>>207
細かい指摘で申し訳ないが、"a1"が2つあったらどうする?
>>208は「10個の要素があるとき class="a1" ~ class="a10" の要素が一つずつある」が前提だが、
>>207は「10個の要素があるとき class="a\d+" の重複しない要素が一つずつある」が前提となる
汎用性をどこまで広げるかでスタンスが変わるんだろうな…
汎用性だけを求めるならArray#sortのようなメソッドをNodeListにも作るのが一番いいんだろうが、おそらく速度が犠牲になる
210 = :
単に子をクラス名でソートしたいだけじゃね
211 = :
>>209
ほいさhttp://jsfiddle.net/SC3Bx/3/
ついでhttp://jsfiddle.net/SC3Bx/4/
212 = :
>>210
面白い発想ですが、普通にArray#sortすると a1 -> a10 -> a2 の順番になります。
http://jsfiddle.net/SC3Bx/5/
>>183のパターンに対応するためには自然言語アルゴリズムでソートする必要があってやや複雑な実装になりますね。
http://vird2002.s8.xrea.com/javascript/natsort.html
213 = :
>>211
催促したようで申し訳ない
class="a\d+" 固定ならこっちも改良の余地はあるな
http://jsfiddle.net/SC3Bx/6/
214 = :
こっちとどちらが早いかな
>>212
自然順アルゴリズムにより文字列比較を行う
http://raw.github.com/kvz/phpjs/master/functions/strings/strnatcmp.js
215 = :
>>198
お前、書くとき計算量を概算せーへんの?
効率悪そうやなー
216 = :
>>215
そりゃ、計算量を概算できるならやるよ。それは想像じゃなくて計算なんだから。
実際の話と仮定の話は明確に区別しましょうってこと
217 = :
ソートの比較関数が何回呼ばれるかは事前に分かるやん
アルゴリズムの問題なんだから
でだ、どの実装もDOMアクセスがそんなに速くないから
比較関数におけるDOMアクセス回数が足を引っ張るのは想定内
それを体感云々でゴマカすのは、ちょっとしょっぺーな
218 = :
>>216
横から失礼するが、仮定の話は誰もしていなかったと思う
どのレスを指していたんだ?
219 = :
そろそろ、Good Partsみたいな小手先のテクニックじゃなく
計算量を調べる手段としてのアルゴリズムの話と
計算の妥当性を調べる手段としてのデータ型(クロージャーもデータ型の一種)の話を
JavaScriptを題材に書く人が現れるべき
220 = :
>>200
すまんすまん語弊があったな
せっかくあるんだからsortがかわいそうだから使ってあげたら?
って意味で言ったんだ
ただの提案のつもりだ
221 = :
は?
222 = :
>>186の「sort使ってやれよ」の話だ
223 = :
∧l二|ヘ
(・ω・ ) おいらをどこかのスレに送るんよ
./ ̄ ̄ ̄ハ お別れの時にはお土産を持たせるんよ
| 福 | |
| 袋 | |,,,....
 ̄ ̄ ̄ ̄
現在の所持品:シュールストレミング、メダルの器ウヴァさん、童貞、ガイアが俺にもっと輝けと囁いている拝聴券、
PGジュアッグ、ROBOT魂カルバリーテンプルヘルミーネ、ヌカランチャー、ウェンディーズバーガー倍額クーポン
ザクレロ、パイルバンカー、魔法少女
225 = :
>>115
> あとモバイルは常に無音を流してないとスピーカーが切れてレスポンス悪くなるから注意
majika
226 = :
maji
227 = :
>>217 >>218
えーと、たかが10個の要素を並べ替えるのに計算量とか考えるんですか?
勝手に数百個の要素を並べ替える話だと想像してませんか?
あと、どちらかというと>>198はinnerHTMLが速い遅いとかって話題に対しての発言ね
228 = :
もし数百個もの要素ならスペックが低い環境に配慮して非同期にしないといかん
229 = :
最近はデジカメでもWEB見れるからなw
これからHTMLは対応環境や機種の差がどんどん
広がっていくんだからIE6とか言ってる場合じゃないぞ
230 = :
初心者ですみません。
とあるサイトのブックマークレートなんですが、これを新規ウィンドウで実行させる場合ってどうしたらいいでしょうか?
javascript:(
function(){
var e=document.createElement('script');
e.src='http://nicosound.anyap.info/js/public/conv.js?'+(parseInt(new Date().getTime()));
e.type='text/javascript'; e.setAttribute('charset', 'shift_jis');
document.body.appendChild(e)})()
231 = :
そのとあるサイト上で実行しないと意味のないブックマークレットなんじゃないの?
232 = :
そうなんですが認識した上で結果を新規タブ出やろうと思ってるんです。
色々調べてはいるんですがwindows.openとはまた違いますよね。
234 = :
>>228
なんでよりによって非同期にするんだよ…
DOMは再描画が重いから、描画の回数を減らすのが高速化の基本
そのケースだったら、要素をページから切り離して、ソート済みの要素を一度で入れ直すようにすればいい
235 = :
>>232
windows.openだけど貼られたコードじゃなく
貼られたコードのsrcで読み込んでいるファイルの中身を書き換えないといけない
236 = :
>>235
なるほど、やはり中身書き換えないとダメなんですね。
ちょっといじってみます。ありがとうございました。
237 = :
>>234
固まるより時間がかかった方がマシ
固まるのは大タブー
別に1回1回にわけなくても
計算と貼付けを分けるとか
それぞれをいくつかに分割するとかすべき
238 = :
お前ら一日に何回もめてるんだよ
ここは質問スレ、議論なら他所でやれ
239 = :
ただのDOMを一番最後にbodyでappendChildする事ってできませんか?
描画を一番最後にforで回して入れたいのですがSyntaxError: Unexpected token ;がでてできませんでした
var div = [];
var body = document.body;
for(var i=0; i<5; i++) {
div[i] = document.createElement("div");
div[i].appendChild(document.createTextNode(i.toString());
}
// このへんに関係ないいろいろな処理
for (var i=0; i<div.length; i++) {
body.appendChild(div[i]);
}
241 = :
やべぇwwwwww入力ミスだったのかwwwうはwwwwww
行番号がどこにも表示されなかったんです
242 = :
皆ってJS打つときってEclipseなの?
244 = :
>>242
ある程度の規模になったらIDEは必須だね。
246 = :
○○使ってるの俺だけだわ~!かぁーっ!俺だけだわ~!
248 = :
秀丸で保存するとChromeのコンソールに反映されるパイプマクロをかまして開発してる
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.90 + (1001) - [97%] - 2011/11/15 20:32
- + JavaScript の質問用スレッド vol.84 + (1001) - [97%] - 2011/3/30 7:32
- + JavaScript の質問用スレッド vol.74 + (1001) - [97%] - 2009/12/1 6:08 ○
- + JavaScript の質問用スレッド vol.99 + (1001) - [97%] - 2012/5/7 4:32
- + JavaScript の質問用スレッド vol.98 + (1001) - [97%] - 2012/4/9 14:46
- + JavaScript の質問用スレッド vol.97 + (1001) - [97%] - 2012/3/1 3:31
- + JavaScript の質問用スレッド vol.96 + (1001) - [97%] - 2012/1/28 23:01
- + JavaScript の質問用スレッド vol.95 + (1001) - [97%] - 2012/1/17 4:16
- + JavaScript の質問用スレッド vol.93 + (1001) - [97%] - 2012/1/1 4:46
- + JavaScript の質問用スレッド vol.93 + (1001) - [97%] - 2011/12/10 18:31
- + JavaScript の質問用スレッド vol.90 + (1001) - [97%] - 2011/10/26 4:18
- + JavaScript の質問用スレッド vol.114 + (1001) - [95%] - 2014/5/3 10:45
- + JavaScript の質問用スレッド vol.142 + (984) - [95%] - 2020/8/27 19:15
- + JavaScript の質問用スレッド vol.124 + (1001) - [95%] - 2015/7/16 1:30
- + JavaScript の質問用スレッド vol.104 + (1001) - [95%] - 2013/1/28 4:00
- + JavaScript の質問用スレッド vol.141 + (881) - [95%] - 2021/4/19 9:00
- + JavaScript の質問用スレッド vol.142 + (926) - [95%] - 2019/12/23 13:15
トップメニューへ / →のくす牧場書庫について