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

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

JavaScript覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

201 = :

>>194
typeof 演算子で回避できる undefined と
typeof 演算子で回避できない window.alert を同列に語ることに疑問を禁じえない

202 = :

>>200
だからなんでundefiedだけを特別扱いするわけ?

既存の変数に代入できてしまう問題は
なにもundefinedだけじゃないわけよ。

undefined変数に変な値が代入されても大丈夫なように作れというのは
undefined以外の変数に変な値が代入されても大丈夫なように作れと
言ってるのと同じなわけ。

undefined変数以外だと、変な値が入っていたら入れる奴が悪い。で終わりなんだろ?
じゃあundefind変数だって変な値を入れる奴が悪いでいいじゃないか?

203 = :

>>201
回避できなかったら諦める。
それが許されるならundefinedも回避できないことにして
諦めていいじゃないか?

204 = :

typeof演算子(もしくはその他の方法)で回避する方法がなければ
こんなバッドノウハウは広がらずに、可読性が高いコードになっただろうな。
凄く残念だ。

205 = :

>>202
>>189 が undefined について質問しているんだから、undefined に関する話題になるのは当然だろうが
突然、window.alert を持ち出すお前の方がおかしい

> undefined以外の変数に変な値が代入されても大丈夫なように作れと言ってるのと同じなわけ。
おまえは Array.prootype 汚染がなぜ忌み嫌われるかを知らんのか
誰もが正しいコードを書けるのなら苦労はしないんだよ
http://oshiete.goo.ne.jp/qa/5081024.html

209 = :

>>186
もしくは配列風オブジェクトって書いてますね
ありがとうございました

210 = :

>>189
駄目じゃないよ
undefinedに上書きする奴なんているわけないから

212 = :

フェイルセーフという考え方があってだな
「失敗を0にする」より「失敗しても正常動作できる設計にする方」が現実的なのだよ
特にヒューマンエラーを0にするのは難しい

213 = :

>>194
ほんとそれ
現実には存在しないレベルのキチガイを想定するのはあほくさい

214 = :

> typedef 4 === 'undefined'
とんでもコードすぎてわらった

215 = :

>>212
それはアプリケーションレベルのオペレータ向けの設計のはなしで、
プログラムのレベルだとヒューマンエラーを検出するために、入力を絞るのが望ましいだろ
ヒューマンエラーを何でも許容したらプログラムなんてまともに組めねーよ

216 = :

>>214
でも理屈的にはそーいうのじゃねーのか?
undefined = null
undefined = 0
undefined = false
undefined = ''
このへんやられてもつまらんし、なにがしてーんだよ

217 = :

undefined=4
typedef 4 === 'undefined'
のような初歩的ミスを晒してるから笑われる
思いつきで適当なこといってると信用なくすよ?

218 = :

>>215
何でも許容するとは誰も言ってない

219 = :

>>217
わらわれるとかそんなんええが、
typeof x === 'undefined'
がundefinedへの代入への対応なら、undefined=4にした場合のtypeofの動作がこうなるってことやろ?

そも、検証するブラウザ環境がないからってきいとるんに、モニタの前でわらっとるまえに読解力磨けよ。

220 = :

>>218
どうでもいいが、
>>212のレスはどこに投げたレスなの?
唐突にフェイルセーフとか言い出した感がいなめんのだが、今日覚えた単語?

221 = :

仕様書を読めない人は理解することが出来なくて大変だな

222 = :

>>220
一々煽ってくるとか、おまえは面倒くさい奴だな
「undefined に何を代入しても構わん」といってる奴に対していってるが、面倒だからもうレスがあってもスルーする
意図的なのか天然なのか知らんが、>>45のタイプは面倒くさい

223 = :

寝ぼけてるのか文面おかしいな
× 「undefined に何を代入しても構わん」といってる奴に対していってる
○ 「undefined に代入する奴が悪い」といってる奴に対していってる

224 = :

>>221
仕様書を読まないのは俺だがお前が指してるのは別人だ
2chで人物透視は馬鹿がすることだから気を付けろよ

225 = :

>>224
お前がそう思うのならそうなんだろう

226 = :

>>224
仕様書を読まずに理解するとはお前エスパーだな?

227 = :

>>172の件ですが、
難しいけどなかなかの良書という感触です

228 = :

クラスを使えるようにする汎用的なライブラリありませんか?

229 = :

ない

230 = :

件の荒らしは「ちんこのもの」(>>208)というのか
ネーミングセンスが小学生レベルだな

231 = :

いや別人だが?

232 = :

2分で別人といえる人物に一人しか心当たりがないわけだが
特定しやすくて助かるな

233 = :

意味不明の珍論理わろた

234 = :

>>212
> フェイルセーフという考え方があってだな
> 「失敗を0にする」より「失敗しても正常動作できる設計にする方」が現実的なのだよ

バグが有る時に、それを隠蔽して動いちゃうのと、
バグが有る時に、問題がすぐに分かるのは、どっちがいいと思う?

235 = :

ハインリッヒの法則考えると小さなバグでもすぐに分かるようにすべきだわな

236 = :

undefinedがundefinedでない状況ってのはバグそのものなので、
コードの冒頭でundefinedがundefinedであることを確かめるのが
一番いいだろうね。

そして後は普通に===undefinedで比較する。

237 = :

undefined が書き換えられても動くのならそのプログラムにおいてはバグではない
考え方がおかしいわ

239 = :

付け加えると、「バグがある」と「バグを発見しやすい」は全くの別物
バグがあれば、バグが発見できるというのはバグが自動的に発見できる仕組みを作って初めて意味をなす
具体的には undefined が書き換えられたら自動的に例外を発生させる仕組みとかあって意味がある
バグがあればバグが発見できるは短絡思考すぎる

241 = :

IE11のエミュレートIE8でjqueryに
undefined=4
のコード入れてみたが、
問題のtypeof x === 'undefined'の部分はまぁ、正しく判断したんだろうが
別の箇所でエラー処理に引っかかった。
結局、undefinedが上書きされてることを通知してないわけだから、
バグの原因(無意識的にundefinedを上書きしてること)を検出してないから無駄な努力だな。

242 = :

>>241
それはjQueryのバグであって本質的には関係ない

243 = :

バグというか、きちがいのコードが混入してるってことだな
でもそんなことはまずない
trueやnullに上書きするくらい不自然なことだから
きちがいというより意図的に破壊しようとしない限りそんなことはしない

246 = :

http://stackoverflow.com/questions/11412044/javascript-alt-key

document.onkeydown = keydown;

function keydown(evt) {
if (!evt) evt = event;
if (evt.altKey) {
alert('alt');
}
} // function keydown(evt)?

この突然出てくる「event」ってなんなんですか?
イベントオブジェクトを破棄してグローバル変数のeventを代入していますが
グローバルにそんなオブジェクトがあるんですか?

247 = :

どうもIE4の時代はwindow.eventというオブジェクトがあったようですね
二年前の質問なのに何故それが問題になるのか分かりませんが・・

248 = :

960 自分:Name_Not_Found[sage] 投稿日:2014/08/28(木) 00:39:34.69 ID:???
altキーの入力を処理するように組んだコードは
macでも問題なく動くのでしょうか?
altと同じような場所にあるalt的なキーはaltと同じコードを持っているのでしょうか?

という質問をした者ですが、optionキーがaltに相当するようです
というかよく見たらoptionキーにaltと刻印されていました

249 = :

metaKeyという属性の存在を知りましたが
これは一般的にウェブアプリで使っていいものなのでしょうか?
metaKeyはwindowsではwindow、
macではcommandに相当するとあります。
しかしbootcamp上のwindowsで、windowキー相当のキーを押してもmetaKeyがtrueになりません
このような動作からも、あまり使わない方がいいものではないかと思われてきます
もちろんbootcamp上のwinは一般的な環境とは言えませんが
皆さんはどうやってますか?

250 = :

DOM仕様を読めば分かる内容で「~でいいのでしょうか?」という質問ばかりですが、どうにもならないんですかね?
上の undefined にまつわる問題も思い込みと主観による反論があって萎えるのですが。


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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