元スレ+ JavaScript の質問用スレッド vol.117 +
JavaScript覧 / PC版 /みんなの評価 :
551 = :
>>550
仕様書には特に何も書かれているだろう。
何も書かれていないということは自由だ。
だからマルチスレッドにしてもよい。
マルチスレッドじゃなくても実装できるなら
別に構わないが。
552 = :
同期か非同期かって具体的にどんな場面で気にするのかわからん
553 = :
パフォーマンスを無視できるのならブロッキングI/Oが自然
つまりパフォーマンスを気にする時にノンブロッキングI/Oが使われる
はい論破
554 = :
ユーザー定義メゾットの対義語って何ですか?
555 = :
組み込み関数以外でお願いします
556 = :
>>553
何を論破してるのかわからんが、単なるパフォーマンスではないぞ
>>552
一般に、処理の中で
すぐにやらなくてもいい(画像の描画など)
すぐにやれない(他の処理の結果に依存するものなど)
終了時が予測できない(サーバのレスポンス待ちなど)
部分は非同期、すなわち後回しにする
GUI フロントエンドの場合は利用者を待たせないことが主な目的になる
557 = :
>>554
組み込みメソッド
558 = :
>>556
言ってること同じやんけ
論破され夫
559 = :
>>556
その処理の中で、サーバ側じゃなくてクライアント側でやる必要のある例ってどんなのがある?
画像の描画については同期・非同期を気にするパターンがそもそも思いつかなかった
560 = :
>>553
自前の重い処理があった場合は非同期にしてもパフォーマンスは向上しない
はい論破
561 = :
>>560
そんな1+1=2みたいなこと言われても言葉に困るわ
562 = :
そもそも同期/非同期っていう言葉がわかりにいんだよな
同期と言う言葉には調和やコントロールのイメージ、
非同期と言う言葉には不調和やアンコントロールのイメージがあるから。
しかし実態は逆で、同期的操作は時に不調和をもたらす
だからブロッキング/ノンブロッキングの方が適切だと思う
563 = :
でもまあ、ブロックと言われても、
レゴ?って思うのが普通だろうな。
564 = :
総合スレから飛んできました。現在、selectのidごとに関数を呼び出していますが、もっと
簡略化してどのオプションから選択されたかに変えることはできるでしょうか?
$(function(){
$("#f1").each(function(){
var pos;
function call_list(){省略}
$(this).each(function(){call_list();});
$("#sel1").change(function(){
pos = $("#sel1 option:selected").val();
call_list();
});
$("#sel2").change(function(){
pos = $("#sel2 option:selected").val();
call_list();
});
});
});
</script>
</head>
<body>
<form id="f1">
<select id="sel1">
</select>
<select id="sel2">
</select>
<select id="sel3">
</select>
</form>
</body>
565 = :
省略部分
$.ajax({
url:"ajax_call.php" ,type:"post",data:{"send":pos}
}).done(function(ret){
//alert(ret);
$("#sel2").children().remove();
$("#sel3").children().remove();
var i;
var sels = new Array("#sel1","#sel2","#sel3");
var pack = ret.split(":");
for( var i=0 ; i < pack.length; i++){
var sep = pack[i].split("@");
for(j=0;j< sep.length -1;j++){
var option = $("<option>");
var opt = option.html(sep[j]);
option.val(sep[j]);
var sel = opt.appendTo(option);
sel.appendTo(sels[i]);
}
}
}).fail(function(){
alert("error");
566 = :
>>564-559のリファクタリング後
$(function(){
function threeSelectFrom(element) {
function refresh(pos) {
$.post("ajax_call.php", {send: pos}, function(ret) {
$(".sel2, .sel3").empty();
$.each(ret.split(":"), function(i, item) {
var values = item.split("@");
values.pop();
var options = $.map(values, function(value) {
return $("<option>").html(value).val(value);
});
$(".sel"+(i+1)).append(options);
})
}).fail(function() {
alert("error");
}
}
$(".sel1, .sel2").change(function() {
var pos = $(this).find("option:selected").val();
refresh(pos);
});
refresh();
}
$("#f1").each(function() {
threeSelectFrom(this);
});
});
567 = :
idを持たせずに
どのオプションから選択されたかを判定したいってこと?
別に、id持たせたらいいじゃん
何があかんねん
568 = :
> 何があかんねん
そりゃ再利用しづらいからだろ?
同じものが2つ以上でたら使えない。
569 = :
最近はIDを使うことって少なくなったな。
classやnameあたりで十分だよ。
570 = :
>>559
>画像の描画
クライアントのブラウザ側が非同期にやってくれるので
クライアントのスクリプト側が気にする必要は普通無い
> クライアント側でやる必要のある例
一般論だが
API にイベントハンドラが用意されていない種類の処理で
非同期にやる必要があるもの、または、自前の重い処理は、
クライアントのスクリプト側で非同期処理を書くことになるだろう
(重い処理は Worker 利用するか、細分化して setInterval や requestAnimationFrame など)
571 = :
JavaScriptで同期処理されるのって、
alertとconfirmぐらいなんだよな。
ブラウザ開発の初期に初期にこういう設計にしたの
凄いと思うわ。そのおかげでGUIとかアニメーションに
時間がかかるようなものでも、自然と非同期にプログラミング
するようになった。
572 = :
リフロー
573 :
>>548
XSSも問題点の一つだが、既存のDOMノードの参照が失われる問題の方が影響範囲が大きい
当然ながら>>547は解決法にはなっていない
574 = 573 :
>>548
XSSも問題点の一つだが、既存のDOMノードの参照が失われる問題の方が影響範囲が大きい
当然ながら>>547は解決法にはなっていない
575 = :
詳しく
576 = :
javascriptを使ったゲームが、FireFoxとGoogleChromeでは見られるのですが、IE11では読み込み画面から進みません
IEのセキュリティのレベルのカスタマイズでスプリクトの項目は全て有効にしたのですが無理です
どうやったらIEで見られるようにできますか
577 = :
確かに判定するためにDOMのidを使うのは無駄に消費するから駄目だな
data-idを使うべし
class使えって意見は意味わかんね
コマンド実行に一意性のあるidがいるのは当たり前
578 = :
>>573
kwsk
579 = :
全部書き換えるから要素のポインタを持ってる時とかに問題になりやすいって意味じゃないの
580 = :
要素にイベントハンドラ付けてたときとか
581 = :
まとめると、XSSに十分気をつけていればinnerHTML使っても全く問題ないと
582 = :
NO
583 = :
innerHTMLのリスクとデメリットを分かっていたら問題ないでFA
584 :
>>578
>>579-574の指摘通り
過去何度も話題にあがっていたはず
585 = :
既存のDOMの参照がなくなる・・・ってそれただの把握できてないアホ
どうせ前にDOMが壊れるって騒いでたやつだ
586 = :
把握できてるからこそだと思うが・・・
587 = :
想定していたものじゃなくなるって意味だろ
アクロバティックな解釈して頓珍漢な批判をする馬鹿が最近多いな
588 = :
>>573
> XSSも問題点の一つだが、既存のDOMノードの参照が失われる問題の方が影響範囲が大きい
それは、ノードを入れ替える以上
何を使おうが絶対発生する。
そこでjQueryがでてくる。jQueryを使っていれば、
これは問題にならない。(適切に処理してくれる。
589 = :
どのレスをみても「何故」がみえてこないな
サンプルコードを書いてみてくれんか
590 = :
分からないなら多分問題ないよ
ある程度複雑な処理をしてないと問題出ないから
591 = :
その複雑な処理が何かって話なんだが、
結局、問題が出るコードはだせないんだね。
ここまででみんな気づいたと思うけど、
問題は全くありません。
592 = :
経験のある技術者には分かることだから
いちいち例を出すのが面倒なだけだろ
まぁ、思いたいように思えばいいんじゃね
593 = :
コードひとつ書けないこの人はたぶん次はこれを見ろよと英文サイトを出してくる
でも内容的には的外れで突っ込まれて逃げる
594 = :
俺は経験ある技術者だけど、
DOMの参照がどうたらいう問題は
今まで起きてないよ。
595 = :
起きたか起きてないかじゃなくて
理解できるかできないか。
経験ある技術者は理解できる。
596 = :
ん? 理解した上で起きないって言ってるんだけど。
ガベージコレクタって知ってる?
597 = :
いやそんな話してないしw
分かってねーじゃん。
598 = :
JSで、新しいウインドウを開き、
データを文字にしたものをそこに出力する
をしたいです
どうしたらいいですか?
599 = :
>>598
意味が分からんがエスパーするとwindow.opener
600 = :
ありがとうございます
類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/1/25 12:46
- + JavaScript の質問用スレッド vol.110 + (1001) - [97%] - 2013/10/13 14:01
- + JavaScript の質問用スレッド vol.119 + (1002) - [97%] - 2014/10/3 15:30
- + JavaScript の質問用スレッド vol.118 + (1002) - [97%] - 2014/8/29 22:30
- + JavaScript の質問用スレッド vol.116 + (1002) - [97%] - 2014/7/1 0:45
- + JavaScript の質問用スレッド vol.115 + (1001) - [97%] - 2014/5/29 16:16
- + JavaScript の質問用スレッド vol.114 + (1001) - [97%] - 2014/5/3 10:45
- + JavaScript の質問用スレッド vol.127 + (160) - [97%] - 2021/7/16 9:30
- + JavaScript の質問用スレッド vol.112 + (1001) - [97%] - 2013/11/27 16:46
- + JavaScript の質問用スレッド vol.111 + (1001) - [97%] - 2013/11/4 6:00
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/3/15 21:30
- + JavaScript の質問用スレッド vol.127 + (1001) - [97%] - 2016/2/4 0:15
- + JavaScript の質問用スレッド vol.137 + (1003) - [97%] - 2019/3/26 11:46
- + JavaScript の質問用スレッド vol.107 + (1001) - [97%] - 2013/9/7 10:16
- + JavaScript の質問用スレッド vol.121 + (1001) - [95%] - 2015/1/1 18:30
- + JavaScript の質問用スレッド vol.126 + (952) - [95%] - 2015/11/18 13:15
- + JavaScript の質問用スレッド vol.126 + (348) - [95%] - 2023/1/12 17:00
トップメニューへ / →のくす牧場書庫について