のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,491,168人
昨日:no data人
今日:
最近の注目
人気の最安値情報

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

元スレ+ JavaScript の質問用スレッド vol.84 +

JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
401 : Name_Not - 2011/03/10(木) 11:01:02.78 ID:??? (+3,-29,-126)
> -1が0以上でないからfalseが返ってくるってことですか?

そういうこと。
>=などの関係演算子、==などの等価演算子の評価結果は
比較対象の型がなんであれ、trueかfalseのどちらかと決められてる。

演算子つーのはそれだけで、ごちゃごちゃといろんなことを中でやってるのだよ。
404 : Name_Not - 2011/03/10(木) 12:48:54.77 ID:??? (-3,-30,-63)
>>403
>a=falseと
そうではない。 a >= 0 が false と解釈される。

皆の迷惑になるから、JavaScriptの仕様書かせめて入門書ぐらい一通り読んでから質問しろよ。
405 : Name_Not - 2011/03/10(木) 12:56:36.01 ID:??? (+0,-29,+0)
どうでもいいけど >= キモい
<= 使ってくれ
407 : Name_Not - 2011/03/10(木) 13:56:37.98 ID:??? (+1,-30,-76)
>>380,403
var a = -1
var b = (a >= 0);
alert(b); // false

if文では比較演算子の評価値(true/false) を見て処理を分けてる。
408 : Name_Not - 2011/03/10(木) 19:19:36.64 ID:??? (+29,-29,-18)
>>405みたいな馬鹿は
(0 <= a) みたいに書いてんの?
そっちのがキモイわw
410 : Name_Not - 2011/03/10(木) 19:54:56.29 ID:??? (+24,-28,-47)
getElementByIdで取得先の要素が更新して、新しい値になった場合でも
前のキャッシュが残っていて前の結果が取られるのですが、
ページリフレッシュせずにこれを解決するにはどうすればいいのでしょうか。
411 : Name_Not - 2011/03/10(木) 19:59:29.26 ID:??? (+57,+29,-35)
取得先の要素を更新しても更新されずにキャッシュがって状況がよくわからない
それって更新してないだけじゃないの?
具体例を見せてほしい
412 : Name_Not - 2011/03/10(木) 20:00:50.61 ID:??? (+50,+22,-27)
innerHTMLとかで丸ごと書き換えてるとかでしょ
413 : Name_Not - 2011/03/10(木) 20:06:08.25 ID:??? (+36,-30,-61)
live だと思ってるんじゃないの。

var element = document.getElementById('hoge');
// ページの更新処理
alert(element); // element が古いまま
414 : Name_Not - 2011/03/10(木) 20:06:30.68 ID:??? (+34,+29,-23)
>>408
常に右辺が大きくなるような書き方にすると可読性が上がる
リテラル値がどっちかなんて考える必要もないしな
415 : 410 - 2011/03/10(木) 20:14:25.65 ID:??? (+65,+28,-14)
>>413
そうです。
おとなしくjquery使っておけという事でしょうか。
417 : Name_Not - 2011/03/10(木) 21:01:23.14 ID:??? (+35,-29,-14)
>>415
更新したら、もういっかい getElementById() を呼ぶ必要があるだけだよ。
418 : Name_Not - 2011/03/10(木) 21:34:54.90 ID:??? (+57,+29,-3)
あれ
大なり小なりって
どつちがどっちだ
419 : Name_Not - 2011/03/10(木) 21:36:35.78 ID:??? (+52,+29,-1)
低レベルなレスはしなくてよろしい
421 : Name_Not - 2011/03/10(木) 21:40:21.91 ID:??? (+52,-30,-23)
>>420
var MyClass = function(){
this.privateMethod = function(){}; // プライベートメソッド
};
422 : Name_Not - 2011/03/10(木) 21:43:13.67 ID:??? (+60,+29,-14)
>>421
プライベートメソッドと言いつつ丸見えな件について
423 : 410 - 2011/03/10(木) 21:54:06.79 ID:??? (+51,+18,-2)
>>417
できました!
すれ汚し失礼しました。
424 : Name_Not - 2011/03/10(木) 21:58:15.00 ID:??? (-10,-30,-112)
>>420
jsにはprivate修飾子なんてないから規約で決めるのが一番いいと思うね
this._method = function(){~};
this._var = "hello";

プライベートには_を付けるというコーディング規約がある(PHPのzendとかいろいろ)
http://framework.zend.com/manual/ja/coding-standard.naming-conventions.html#coding-standard.naming-conventions.functions-and-methods
425 : Name_Not - 2011/03/10(木) 22:04:46.90 ID:??? (-4,-30,-29)
>>420
var MyClass = function(){
 function privateMethod (){}
 this.publicMethod = function publicMethod () { privateMethod.call(this); }:
};
426 : Name_Not - 2011/03/10(木) 22:06:41.33 ID:eJR+lZ3V (-22,+29,-52)
>>424
ということは、javascriptでプライベートメソッドをエミュレートするときの慣習というか、常識となっている方法は名前規約なのですね。
回答ありがとうございました。
427 : Name_Not - 2011/03/10(木) 22:08:23.31 ID:??? (+57,+22,-3)
>>421 >>425
これ動くのか?
428 : Name_Not - 2011/03/10(木) 22:08:37.56 ID:??? (-1,-29,-5)
privateにしようとしてソースコードまでプライベートにしたら意味がない
430 : Name_Not - 2011/03/10(木) 22:19:15.52 ID:??? (+55,+27,-1)
JavaScriptはクラスベースじゃありますん
431 : Name_Not - 2011/03/10(木) 22:41:17.78 ID:??? (+0,-30,-105)
>>429
privateMethod を共有していいのなら、privateMethod を外に出せばいい。

function MyClass (hoge){ this.hoge = hoge; return this; }
(function () {
 function privateMethod (){ alert(this.hoge); }
 MyClass.prototype.publicMethod = function publicMethod () { privateMethod.call(this); };
})();
new MyClass('foo').publicMethod();
432 : Name_Not - 2011/03/10(木) 23:17:20.20 ID:eJR+lZ3V (-16,+29,-50)
 >>431
なるほど!Callオブジェクトの中に閉じ込めるんですね!
そんな使い方ができるなんて……とても勉強になります。

ところで、そのコードで1点わからないところがあります。
MyClassで自身を返している(return this)のはなぜなのでしょうか?
削ってみても動くようなのですが、どんな意図があるのでしょうか。
433 : Name_Not - 2011/03/10(木) 23:30:27.67 ID:??? (-7,-29,-10)
new MyClass().methodA().methodB()な使い方をしたいんじゃない?
434 : Name_Not - 2011/03/10(木) 23:33:54.55 ID:??? (+62,+29,-2)
どう読んだらそうなるんだよww
435 : Name_Not - 2011/03/10(木) 23:39:35.11 ID:eJR+lZ3V (-20,+29,-42)
>>433
言いたいことはわかります。
jQueryによくある感じで、ドットでメソッドをつなげていくことを意識したのでしょうか。
ともかく回答してくださった方々、どうもありがとうございました!
436 : Name_Not - 2011/03/10(木) 23:59:38.35 ID:??? (-1,-29,-40)
2000年頃に流行ったreturn thisは
VisualBasic畑のよくわかってない外人がmsdnのコラムで書いていたのが
コピペで広まったもの
437 : Name_Not - 2011/03/11(金) 00:02:39.00 ID:??? (+57,+29,-73)
プライベートはグローバル変数と同じ、気にし過ぎる方がどうかしている
どうしてもやりたきゃ適当なインスタンスを隠蔽してそいつに委譲しろ
つーかそれを自動でやるのがprototypeなんだがな
438 : Name_Not - 2011/03/11(金) 00:14:24.29 ID:??? (+4,-29,-32)
javascriptでprivateはいらないな…
constは欲しいけど
439 : Name_Not - 2011/03/11(金) 00:23:17.18 ID:??? (+51,-30,-66)
>>434
Test = function(){
this.hello = function(){
alert("hello");
return this;
}
this.world = function(){
alert("world");
return this;
}
}
new Test().hello().world();

こんなのを想像したが
440 : Name_Not - 2011/03/11(金) 00:58:21.41 ID:??? (+72,+29,-112)
JavaScriptでJavaみたいな書き方をする必要がないしそういうふうにできてない
他言語から来た人はもっと柔軟性をもたないと
とくにオブジェクト指向といってもクラスベースとプロトタイプベースでは
根本的な概念が違うしクラスにこだわらずプロトタイプでの実装を学ぶべき
441 : Name_Not - 2011/03/11(金) 01:25:10.85 ID:??? (+13,-30,-27)
method1、method2、method3はどう違う?

var MyClass = function() {
 var method1 = function() {}
method2 = function() {}
 function method3() {}
}
442 : Name_Not - 2011/03/11(金) 01:47:08.64 ID:??? (+47,+29,+0)
何もかもが違う
443 : 431 - 2011/03/11(金) 01:47:34.09 ID:??? (+64,+29,-50)
>>439
それもあるが、明示的に return する方がわかりやすくて好み。
この場合は違いがないので各々のスタイルで書けばいいと思う。
444 : Name_Not - 2011/03/11(金) 02:01:20.25 ID:??? (+91,+29,-72)
コンストラクタはプロパティのスナップショットをとるのにも使う
return thisなんて書かなきゃならんほどグダグダ書かない方がええ
どうしてもメソッドチェーンが好きならイニシャライザを分けろ
445 : Name_Not - 2011/03/11(金) 02:24:47.24 ID:??? (+57,+29,+0)
446 : Name_Not - 2011/03/11(金) 09:05:03.87 ID:??? (-2,+30,+0)
448 : Name_Not - 2011/03/11(金) 11:25:47.78 ID:??? (+57,+29,-19)
すまん裏で読むってどういうことだ?
画像が読み込まれる前にじゃヴぁすくが実行されるとこまるト言うケースならわかるが、
449 : Name_Not - 2011/03/11(金) 11:56:48.55 ID:??? (+53,-30,-189)
var images = [""];
var counter = 0;
var complete = function(){
    if(img.length <= ++counter) {
        alert("終わったよ?");
    }    
}
var loadImage = function(e){
    var image = new Image();
    image.src = e;
    image.addEventListener("load", complete, false);
    image.addEventListener("error", complete, false);
}
images.forEach(loadImage);

適当に書いてみた動くかは分からない
450 : Name_Not - 2011/03/11(金) 12:04:30.80 ID:??? (-2,-30,-53)
訂正
誤    if(img.length <= ++counter) { 
正    if(images.length <= ++counter) { 
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について