14/11/06 03:55:47.52
■質問テンプレート
【環境】OS, ブラウザをバージョンと共に記入してください。(ex: IE8, Firefox4)
【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。
【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。(Windows なら「コピット」を活用)
【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
1レスに収まらないならコード投稿サイトを利用してください。
URLリンク(jsdo.it) URLリンク(jsbin.com) URLリンク(jsfiddle.net) URLリンク(ideone.com)
■前スレ
+ JavaScript の質問用スレッド vol.121 +
スレリンク(hp板)
■過去スレ全集
URLリンク(www2.atpages.jp)
URLリンク(usamimi.info) (閲覧のみ)
■テンプレ案
URLリンク(fiddle.jshell.net)
■関連スレ
ECMAScript デス 4
スレリンク(tech板)
JavaScript ライブラリ総合質問所 vol.4
スレリンク(hp板)
Webサイト制作初心者用質問スレ part241
スレリンク(hp板)
CSS初心者スレッド=12th=
スレリンク(hp板)
Canvasについて語ろう
スレリンク(hp板)
3:Name_Not_Found
14/11/06 03:56:34.12
■主要FAQ (全部は URLリンク(fiddle.jshell.net) )
Q1. 別窓・フレーム内容やローカルファイルを読み書きしたいのですが…
A1. 別サーバのページやファイルの内容はセキュリティ制約でアクセス不可です。
Q2. document.write()でページ内容を追加したいのですが…
A2. 一度表示完了後にwriteするとページ内容が消去されます。DOM等別手段を。
Q3. table内容のinnerHTMLやDOMでの変更がうまく行かないのですが…
A3. IEではtable/tbody/trのinnerHTML書き換え不可です。DOMを使いますが、
DOMの場合tableの直下にはtbody要素が(作らなくても)あることに注意。
Q4. フォーム部品名を変数にした「...myform.変数名.value」が動きません…
A4. 「document.forms.myform.elements[変数名].value」でどぞ。
JavaScriptでは一般に「obj.x」と「obj['x']」は同じ意味です。
グローバル変数はwindowのプロパティなので「x」と「window['x']」も。
Q5. CSSで設定した背景色がe.style.backgroundColorで取得できないのですが…
A5. 取得には document.defaultView.getComputedStyle() を使う必要あり。
IEでは要素オブジェクトのプロパティcurrentStyleを使う。
Q6. setAttribute("class","foo")、setAttribute("onclick","bar()")が動きません…
A6. IEではそれは不可。「obj.className="foo"」「obj.onclick=bar」でどぞ。
Q7. タイマーやイベントハンドラに設定するコードにthisを含めたいのですが
「"...this..."」とか「function(){...this...}」ではうまく行きません。
A7. 実行時にthisが別のものを指してしまってる。以下のようにthisを束縛保存。
「function(x){return function(){...x...};}(this)」
Q8. input type="file"の値を設定(参照)できないのですが…
A8. セキュリティ制約のため設定は絶対に不可。参照はブラウザにより不可。
Q9. getElementById('ID名')や$('ID名')で要素が取れないのですが…
A9. コード実行時点でHTMLがそこまで読まれてない。window.onload 中でやるとか。
4:Name_Not_Found
14/11/06 03:57:23.42
■各種仕様 ( URLリンク(fiddle.jshell.net) も参照 )
◆ Standard ECMA-262
URLリンク(www2u.biglobe.ne.jp) (ECMAScript 3 和訳)
URLリンク(www.ecma-international.org) (ECMAScript 5.1 HTML版)
URLリンク(people.mozilla.org) (ECMAScript 6 有志HTML版)
URLリンク(kangax.github.io) (ECMAScript 5 compatibility table)
URLリンク(kangax.github.io) (ECMAScript 6 compatibility table)
◆ HTML Standard (HTML5)
URLリンク(www.whatwg.org)
URLリンク(momdo.s35.xrea.com) (HTML5.1 部分訳)
URLリンク(www.hcn.zaq.ne.jp) (Web Storage 和訳)
◆ Document Object Model (DOM) / CSS Object Model (CSSOM)
URLリンク(www.hcn.zaq.ne.jp) (DOM Standard (DOM4) 和訳)
URLリンク(www.w3.org) (DOM3 Events)
URLリンク(www.w3.org) (UI Events)
URLリンク(www.hcn.zaq.ne.jp) (CSSOM 和訳)
URLリンク(www.hcn.zaq.ne.jp) (CSSOM View Module 和訳)
◆ その他のWeb関連仕様
URLリンク(domparsing.spec.whatwg.org) (DOM Parsing and Serialization - innerHTML等)
URLリンク(www.hcn.zaq.ne.jp) (XMLHttpRequest 和訳)
URLリンク(www.hcn.zaq.ne.jp) (File API 和訳)
URLリンク(www.whatwg.org) (WHATWGの仕様一覧)
◆ MDN (Netscape/Mozilla)
URLリンク(developer.mozilla.org)
◆ JavaScript Garden (ja)
URLリンク(bonsaiden.github.com)
◆ JSON (JavaScript Object Notation)
URLリンク(www.json.org)
◆ MSDN Library
URLリンク(msdn.microsoft.com) (JavaScript)
URLリンク(msdn.microsoft.com) (JScript)
URLリンク(msdn.microsoft.com) (DHTML)
5:Name_Not_Found
14/11/06 03:58:07.91
■諸注意
vol.115でlodashを不必要に推奨して啓蒙する行為が多く確認されており、ライブラリ系の質問はvol.116から禁止されました。
vol.115,116ではライブラリ禁止する発言が見られた直後にライブラリを許可する意図で次スレを立てる行為が確認されています。
本スレッドでライブラリ許可を求める発言が確認された場合は不要な争いを避ける為、スルーすることを推奨します。
ライブラリの質問はライブラリスレへ誘導し、誘導行為への反論はスルーしてください。
6:Name_Not_Found
14/11/06 03:58:31.45
ここは荒らしが建てた重複スレです
本スレはこちら↓です。
+ JavaScript の質問用スレッド vol.121 +
スレリンク(hp板)
7:Name_Not_Found
14/11/06 04:00:05.55
>>6
すみません。気づかないで立ててしまいました。
削除依頼出しておきますねー。
8:Name_Not_Found
14/11/06 09:01:44.54 tJPQEByU
>>1
おっつでーす
9:Name_Not_Found
14/11/06 09:04:48.79
>>1
またお前か
教えて君を擁護するためのテンプレで新スレを無駄に量産するな
10:Name_Not_Found
14/11/06 09:35:38.79
おれがテンプレにいれた循環参照の入れとけよ>>1無能4ね
11:Name_Not_Found
14/11/06 09:56:40.97
removeChildで子ノードを削除しようとしてもすべて消えません
var aNode = document.getElementById("baseNode");
for (var i =aNode.childNodes.length-1; i>=0; i--) {
aNode.removeChild(aNode.childNodes[i]);
}
12:Name_Not_Found
14/11/06 10:05:39.65
>>9
スレリンク(hp板:5番)n のコピペか
どうみても教えて君を擁護するスレじゃないけど、よっぽど悔しかったのかね
13:Name_Not_Found
14/11/06 10:11:02.61
>>11
for (var i =aNode.childNodes.length-1; i>=0; i--) {
console.log(aNode.childNodes[i]));
}
でまず確認
14:Name_Not_Found
14/11/06 11:07:02.17
>>1
幼稚なことすんなゴミ
新陳代謝の低い板なんだからスレがえんえん残るだろボケ
15:Name_Not_Found
14/11/06 11:11:49.60
テンプレなんて意味ないんだから立った順番に粛々と使っていけばいい
ここはvol22として利用する
16:Name_Not_Found
14/11/07 00:45:27.47
>>11
ループ内でlengthの値が変わってるよw
17:Name_Not_Found
14/11/07 00:56:15.97
あれ?変わっても関係ないか?
18:Name_Not_Found
14/11/07 01:54:27.28
IEの互換モードのせいかなと思ってちょっとやってみたけど違った
なんだろね?
19:Name_Not_Found
14/11/07 02:35:32.38
>>16-18
loop内でlengthは参照してない
20:Name_Not_Found
14/11/07 06:01:12.39
(function(){
//なんか処理
})();
よく見るこれってなんなの
なんて呼ぶの
21:Name_Not_Found
14/11/07 07:44:19.05
クロージャ
22:Name_Not_Found
14/11/07 10:10:48.45
>>20
- 無名関数式
- 匿名関数式
- 即時関数
23:Name_Not_Found
14/11/07 11:25:04.21
(function(a){
})(a||a=[]);
こんな感じだったかよく覚えてないけど
括弧の中で代入してるコード見たことあるんですけど自分で描いてみたらエラーになりました
aっていうのが存在しなかったら[]を渡したい場合はどう書けばいいですか?
24:Name_Not_Found
14/11/07 11:36:21.45
ここは実質vol.22です
質問者は以下のスレに移動してください
+ JavaScript の質問用スレッド vol.121 +
スレリンク(hp板)
25:Name_Not_Found
14/11/07 15:26:16.47
>>23
var a = a || [];
(function(a){
})(a);
26:Name_Not_Found
14/11/08 01:28:58.41
>>20
即時実行の無名関数
27:Name_Not_Found
14/11/08 01:35:46.86
>>23
そうする意味がわからんが・・
これは例でなにかそうしたいわけがあるのだろう
ほい
(function(a){
})(a||(a=[]));
28:Name_Not_Found
14/11/08 01:40:41.91
うは 上ので試したらエラーは出ないけどできてなかったわw
29:Name_Not_Found
14/11/08 01:49:06.73
(function(a){
})(!a?[]:a);
これでいった
!つけずに真偽逆だとなぜかいかなかった
30:Name_Not_Found
14/11/08 01:54:37.37
あーさらにわかってなかったわ
そこ以外でもaを[]にしないといけないのか
31:Name_Not_Found
14/11/08 02:08:04.52
>>23
var a = [];
(function(){
var a = this.a || [];
}).call(this);
>>27-28
ReferenceError: a is not defined
32:Name_Not_Found
14/11/08 02:33:16.01
ここは実質vol.22です
質問者は以下のスレに移動してください
+ JavaScript の質問用スレッド vol.121 +
スレリンク(hp板)
33:Name_Not_Found
14/11/08 03:19:09.75
>>32は荒らしの立てたスレなのでここで質問して構いません
34:Name_Not_Found
14/11/08 03:31:13.94
>>31
最初に a= ってやったらもうなんでもいいだろw
そんなことを聞きたいんじゃないんじゃないの
35:Name_Not_Found
14/11/08 03:34:41.87
ファイナルアンサー
(function(a){
})(!a?(a=[]):a)
36:Name_Not_Found
14/11/08 03:34:47.00
>>34
a を初期化してなくても動作するだろ
試してからものをいえ
37:Name_Not_Found
14/11/08 03:39:16.09
>>35
何度同じことをやれば気が済むのさ
ReferenceError: a is not defined
ファイナルアンサーどころじゃないから検証方法を見直せ
38:Name_Not_Found
14/11/08 03:39:47.31
いやその関数内でも
引数渡す際に代入できるかどうか聞いてたんじゃないの?
39:Name_Not_Found
14/11/08 03:55:21.58
>>38
括弧内でやるのも括弧外でやるのも同じだろ
// case 1
(function(){
console.log(this.a); // []
}).call(this, this.a = this.a || []);
// case 2
var a = a || [];
(function(){
console.log(this.a); // []
}).call(this);
グローバルコード上でグローバル変数を宣言しているのは全く変わらない
初期化のタイミングが少し違うだけだ
>>31はグローバル変数が存在しなかった場合にグローバル変数として初期化しないが、タイミングは対して変わらん
まず、目的(何をしたいのか)を明らかにしてからどうすべきか考えろよ
括弧内で代入することに何の意味があるんだ?
何もかも後出しでは何も伝わらん
40:Name_Not_Found
14/11/08 04:00:35.27
超同意
41:Name_Not_Found
14/11/08 05:25:35.75
ベストアンサー
(function(){
a=a||[];
})();
42:Name_Not_Found
14/11/08 08:51:23.49
昔は?文の中で代入とか++やったらエラーにならなかったっけ
43:Name_Not_Found
14/11/08 09:06:28.77
audioに入れた音の波形データを自動的にとる方法はありますでしょうか?
failオブジェクトを使えば取得できますがこれだと手動になってしまいます
画像だとビットマップデータをとるすべが存在するので
音でもなにかしらありそうなのですが…
44:Name_Not_Found
14/11/08 09:11:01.71
>>41
var を抜かしてベストアンサーはない
自画自賛もいい加減にしろ
45:Name_Not_Found
14/11/08 09:30:28.35
>>43
failオブジェクトとは?
WHATWGでfailを検索してもそれらしきオブジェクトがHITしないが
URLリンク(html.spec.whatwg.org)
「音の波形データを自動的にとる」の「自動的」とは?
インターネットキャッシュのように一定容量以下はユーザの許可を取らずに勝手に波形データを保存する仕組みがあるという事?
そんな方法があるならブラウザの設定でサイズを指定できてもいいはずだが
画像でビットマップデータを自動的にとる術とは?
上述のように勝手にユーザのストレージにビットマップデータを保存する方法があるのか?
46:Name_Not_Found
14/11/08 09:57:07.60
>>43
>45と同様に「自動的」の意味が分からんが、こういうものか?
URLリンク(d.hatena.ne.jp)
URLリンク(yanagiatool.appspot.com)
47:Name_Not_Found
14/11/08 12:53:16.89
ここは実質vol.22です
質問者は以下のスレに移動してください
+ JavaScript の質問用スレッド vol.121 +
スレリンク(hp板)
48:Name_Not_Found
14/11/08 13:05:27.58
vol.22は既に終了しています
URLリンク(usamimi.info)
>>47は荒らしの立てたスレなのでここで質問して構いません
49:Name_Not_Found
14/11/08 13:09:17.32
ここは実質vol.22です
残念なことですが、愚かな早漏野郎が立ててしまいました
質問者は以下のスレに移動してください
+ JavaScript の質問用スレッド vol.121 +
スレリンク(hp板)
50:Name_Not_Found
14/11/08 13:39:47.32
言葉遣いからして荒らしだとすぐ分かるな
51:Name_Not_Found
14/11/08 14:00:36.61
板にゴミが残らないように順番に使っていくべきと
当たり前のことを述べているに過ぎない
誰が立てたのかになど興味はないし、だからこそこのスレも次に使うべきだと言っている
この簡単な論理がわからんか?アホなのか?チミは?
52:Name_Not_Found
14/11/08 14:31:42.42
暴言を吐く奴は全て荒らし