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

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

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

>>100
あー、なるほど!処理順か!納得した納得できた

どこで見つけたコードかというとyoutubeのhtml5playerのjavascript文
読みにくくて仕方ないわ

102 = :

別にクソコードじゃないよ
そういう書き方をしたい場合もある

103 = :

>>100
お礼が欠けてました、ありがとうございます。いや助かった
評価の順番といわれるまで何のことだか全然わからなかった、よく考え付くもんだほんと

104 = :

わざと読みにくくさせる
つまり暗号化させたい時w

105 = :

Googleはショートコーディングの為に使うが、機械化してるので元々は難読なコードではない

106 = :

圧縮するとそういう風になるんだね

107 = :

function hoge(a) {
 console.log(a || 'ふが');
}

hoge('ほげ') // ほげ
hoge(); // ふが

みたいなやつも最初演算だと思ってわからなかった
とくに”ふが”の部分が0とかだったりすると
ますます何がわからないのかわからない状態に陥ってた

108 = :

perl使いが>>99みたいな書き方するよね。

110 = :

複数のWebブラウザ(PCのほかにスマホ含む)でAjax的な動作をさせたい場合に
どのようなアプローチが効率的ですか?
とりあえず思いつく線だと
1.ECMAネイティブで記述する
  最近はIE6みたいな俺実装ブラウザは減った気がする。実行速度的に有利?
2.Ajaxフレームワークを用いる
  コーディングは楽になりそうだけど、フレームワーク内の見通しがよくない他
  コードが増加しデバッグやの手間も増える気がする

112 = :

どうせjqueryは使うんだからjqueryでやるのがいいんじゃない

113 = :

ネイティブで、そこそこの時間で書けるならそれが一番じゃねーの
事前にどこまでをサーバ側にさせるか良く考えればあんまり問題おきないし

114 = :

>>110
> 1.ECMAネイティブで記述する
ECMAScript には XMLHttpRequest も ActiveXObject も存在しない

3. XMLHttpRequest, ActiveXObject を用いる
コーディング分岐はたいしたことはないのでこれで十分

115 = :

jquery使えば分岐もいらない

116 = :

ネイティブJavaScriptで書いてる人は独自ライブラリを持っているだろうから、ライブラリ云々は問題じゃない
自分で使い慣れたものが一番いい
勉強する気があるなら両方書いてみるといい

117 = :

沢山の人々に使われ、それだけ鍛えられているjqueryを使わず
わざわざ自作ライブラリを使う意味がワカンネ

118 = :

>>99
&& を「ならば」に読み替えるというのもあるな

119 = :

レスありがとうございます
過去に複数のWebブラウザに対応(ただしPC限定)したAjaxアプリ的なのを作ったことが
あるのを思い出して今確認してみました。結構古い物ですが当時の実装は・・・
Webブラウザの対応はFirefox3.0とIE8のIE6モードでXMLHttpRequestとaddEventListenerを
自作ライブラリで抽象化していました。開発時にはPC版のChromeとSafari、IE6でも期待した
動作をすることを確認していたはず・・・モバイル環境は未考慮でマウスUI前提です
現行のWebブラウザに対応する場合はXMLHttpRequestの処置は必要みたいですが
addEventListenerはそのまま書いて大丈夫そうですね

>>114
なるほど、そういうことなのですか。勉強になりました

> jQuery
こういうAjaxフレームワークって罠とかないのですかね?
Webブラウザの差違が完全に吸収されて、かつ動作が安定している(せめてWin32API程度には)ので
あれば使う価値があるかなと思います
中途半端に動くようなトラブルはフレームワーク内部にまで立ち入ったデバッグが必要になって苦労する
場合があるので勘弁願いたいです。昔、WinアプリでGUIフレームワークを使ったときに、この手のトラブルで
だいぶ苦労した記憶があるので、ネイティブで書いた方が最終的に楽なのではという気持ちはあります

120 = :

> こういうAjaxフレームワークって罠とかないのですかね?

自分で作ったものには、罠があるよ。
なにせ全部のブラウザで試してないだろう?
特定のブラウザで動かないことは多いだろう。

それに自分で作ったものは、中途半端でトラブルで
ソースコード内部にまで立ち入ってデバッグしなければならない。
自分で作ってるから他の誰もデバッグしてくれないしな。

そしてネイティブで書くと、各ブラウザで発生するトラブルを
全部一人で解決していかなければならない。

そしてひとしきり解決して思うことは、
今自分はjQueryの劣化版を作ってるだけなんだってこと。

121 = :

jQuery妄信もそれはそれでどうかと思うがな

122 = :

jqueryはデカイからな

123 = :

jQueryを使おうが何を使おうがトラブルが起きた時に解決しなきゃいけないのは結局自分じゃね?w

125 = :

>>124
ans + rnd は、

変数 ans の値と変数 rnd の値に対し、 + 演算子による演算を行う、と解釈される
(「変数」と書いたがプロパティの場合もあり得る。が、ここでは本質的でないので説明は省く)
ここでは ans という名前の変数は宣言されていないのでエラーになる

ans という名前と、 rnd の値に対し、文字列の連結演算を行うわけではない
そのようにしたい場合は "ans" + rnd と書かなければならない

次に
document.write("ans" + rnd);
に変えたとしても、 "ans" + rnd の結果は、変数名ではなく、文字列と解釈されるので
"ans0" "ans1" 等々が単に文字列として出力されることになる
結果の文字列に「対応する」値を出力させたいなら、連想配列を利用する必要がある

var answers = {
ans0: "りんご",
ans1: "みかん"
ans2: "バナナ"
}
document.write( answers["ans" + rnd] );

127 = :

>>125-126
ありがとうございます。
「document.write(ans0); 」と直接指定したときには、「りんご」と直接表示されたので、なんで出ないのか困っていました。
もう一つお聞きしたいのですが、「document.write (ans[rnd])」と書いてはなぜダメなのでしょうか?

129 = :

>>127
ans[rnd] は ans0 等ではなく ans[0] 等に評価される
これは ans という名前のオブジェクト変数/配列変数の 0 という名前/インデックスのメンバを表す
しかし ans という名前の変数は宣言されていないのでエラーになる

コードというのはなるべく簡単に表記できるように
( ans[0] を「ans という名前の…」などと書かなくとも済むように)
背景の仕組みは可能な限り省略され、
冗長な部分は可能な限り削ぎ落として
記される、記せるようになっているのが常だ

コードの表層ばかり見ていてはだめで、背景の仕組みをもっと理解する必要がある

130 = :

jqueryのmouseleaveハンドラで要素を消しているのですが、
稀に何かのタイミングでその要素が残ることがあります
しかし条件が分からないのです
mouseleaveが発生しない条件って何でしょう?

131 = :

mouseout系は、その一回のイベントを受け損ねたら
ずっと残り続けてしまうので、
脆弱だとは言えると思います
とはいえjqueryのmouseleaveはかなりの強固なので、
信用していたのですが・・

132 = :

>>98
遅レスですがここの質問がある程度わかりオライリーをある程度読めれば普通の会社くらいは行けますか?

133 = :

バナナが絶対選ばれないのは誰も指摘しないのか

134 = :

だってバナナだし

135 = :

>>132
はじめてのJavaScript、秀和システム
掌田津耶乃(しょうだ つやの)、2013

オブジェクト指向、DOMについて、
各100ページの説明があるので、おすすめ

136 = :

>>135
それ前にこのスレに書かれて叩かれてた本やん
遠回しな叩きか?

137 = :

>>132
何が普通でどういうレベルの募集に対応したいのか知らんが
設計済みならコーディングは一通り出来ます、って人が多いんじゃないかな、ライバルは

個人的には「自分、英語ダメなんでwww」っていうのが困る

138 = :

プロになりたいならプロが作る程度のものを作れるようになればいい
どのくらいの知識があれば会社に入れるかとか、そんなこと考える必要ない

139 = :

>>132
twitterでjavascriptのネタをつぶやいたり批判したりできるぐらいの実力が無いと大手は無理ですが
底辺の会社ならいけますね

140 = :

ブール値の変数名はboolとbooleanどっちがいいですか?

141 = :

自分では何も考える気のない丸投げ質問ばかりだな

142 = :

>>140
俺だったら値のタイプじゃなくて値を何に使うかで名前つけるけど

143 = :

>>135
俺もこれ読む価値あると思う。
object、prototypeなどの概念については詳しい。
学習始めて2冊めくらいに読むにはいいんじゃないか。

そのぶんjquery等の即使える技術については言及が少ないが。

145 = :

>>132
ある程度の範囲が曖昧すぎて回答できない
オライリー本も何の本か書いてないので答えられない

最近、出ている質問には全て答えられないとやってけないと思う
DOM, ECMAScript, XMLHttpRequest 等の代表的なAPIのマスターは必要条件
書籍は『JavaScript 第6版』を熟読
まず、書籍の内容が理解できる程度に習得してから徐々に慣らしていく
自分でイメージしたプログラムを他人のコードをコピペせずに作れるようになれば一人前

jQuery等のライブラリは使うだけじゃなく、jQueryコードがどのように動いているか、コードリーディングで把握できる力を身につける
ブラックボックス化したコード(読む力がないから読まない)に依存することほど危険な事はない

146 = :

仕事で必要になったときすぐ勉強して覚えられる人なら普通の会社でやってけるよ

147 = :

>>143
著者さん宣伝ご苦労様です

148 = :

>>135
本の紹介なんて望んでない展開なのに唐突でわろた

149 = :

セッターメソッドの場合は型を変数名にするのは当然だと思いますが?
setHoge(str)
とするのなら
setHoge(bool)
とするのは自然なことです
したがってboolかbooleanかは妥当な疑問だと思いますが?


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

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


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