私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.121 +
JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
>>147
結局低質な乱数でもテトリスの方法をいじれば頻度100%だよな
結局低質な乱数でもテトリスの方法をいじれば頻度100%だよな
そのスライダー何www
type="range" 使えばいんじゃね
type="range" 使えばいんじゃね
5ボタンマウスの戻る 進むが通常割り当てられているx1 x2をJavascriptで捕捉することって出来ないですか?
特定のサイトでマウスの誤操作による戻るを無効化するスクリプトを書きたいのですが
他に良い案があればそれも教えて頂きたいです。
特定のサイトでマウスの誤操作による戻るを無効化するスクリプトを書きたいのですが
他に良い案があればそれも教えて頂きたいです。
ホイールだけでブラウザ対応が違うからなあ
何かするサイトじゃなければイベント全部return false;でいんじゃね~
何かするサイトじゃなければイベント全部return false;でいんじゃね~
何かするサイトなんでそれはちょっと難しいですね…。
使ってるのはFirefoxです。Grease Monkeyでそのサイトでだけ戻るや更新を禁止して作業の損失を防ぎたいのですが、調べてると難しそうですね。
使ってるのはFirefoxです。Grease Monkeyでそのサイトでだけ戻るや更新を禁止して作業の損失を防ぎたいのですが、調べてると難しそうですね。
イベント時に何で戻ったかを調べてreturn false;すればよさげだけど
戻る禁止ってブラクラになるからダメなんだっけ
戻る禁止ってブラクラになるからダメなんだっけ
先生!
>>155はinnerHTMLを使ってるようですがいいんですか!?
>>155はinnerHTMLを使ってるようですがいいんですか!?
var outputlog = function(level, msg){
console.log("["+level+"]"+msg);
};
var outputlogCreator = function(level){
return function(msg){
//outputlog("debug", msg);←間違え?"debug"でなくlevelのはず
outputlog(level, msg);
};
};
var test1 = function(t,logger){
logger('あああああ')
logger('いいいいい')
}
var newoutputlog = outputlogCreator( "DEBUG2");
test1(2,newoutputlog);
クロージャの使い方で雑誌の記事では、
ライブラリtest1のlogger関数は引数1つだけど、引数2つのoutputlogを渡すために、
クロージャを使ったoutputlogCreatorを使う方法が載ってましたが、
var newoutputlog = outputlogCreator( "DEBUG2");の"DEBUG2"を反映させるために
//outputlog("debug", msg);ってoutputlog(level, msg);ではないでしょうか?
console.log("["+level+"]"+msg);
};
var outputlogCreator = function(level){
return function(msg){
//outputlog("debug", msg);←間違え?"debug"でなくlevelのはず
outputlog(level, msg);
};
};
var test1 = function(t,logger){
logger('あああああ')
logger('いいいいい')
}
var newoutputlog = outputlogCreator( "DEBUG2");
test1(2,newoutputlog);
クロージャの使い方で雑誌の記事では、
ライブラリtest1のlogger関数は引数1つだけど、引数2つのoutputlogを渡すために、
クロージャを使ったoutputlogCreatorを使う方法が載ってましたが、
var newoutputlog = outputlogCreator( "DEBUG2");の"DEBUG2"を反映させるために
//outputlog("debug", msg);ってoutputlog(level, msg);ではないでしょうか?
>>169
汚かったから直した。関数を必要のないのにいちいち変数に入れるなよな。(オリジナルを書いた人へ)
所詮日経ソフトウェアか。
君の言うとおり。そこは間違いだよ。
function outputlog(level, msg) {
console.log("["+level+"]"+msg);
}
function outputlogCreator(level) {
return function(msg) {
outputlog(level, msg);
};
}
function test1(t, logger) {
logger('あああああ');
logger('いいいいい');
}
var newoutputlog = outputlogCreator("DEBUG2");
test1(2, newoutputlog);
汚かったから直した。関数を必要のないのにいちいち変数に入れるなよな。(オリジナルを書いた人へ)
所詮日経ソフトウェアか。
君の言うとおり。そこは間違いだよ。
function outputlog(level, msg) {
console.log("["+level+"]"+msg);
}
function outputlogCreator(level) {
return function(msg) {
outputlog(level, msg);
};
}
function test1(t, logger) {
logger('あああああ');
logger('いいいいい');
}
var newoutputlog = outputlogCreator("DEBUG2");
test1(2, newoutputlog);
なるほど、関数名は君がつけたのか。
outputlogCreator はcreateLoggerの方がいい。
これはクラスじゃなくて関数だから、動詞+名詞 にする。
outputlogCreator はcreateLoggerの方がいい。
これはクラスじゃなくて関数だから、動詞+名詞 にする。
>>172-173
ありがとうございます。
やっぱ間違えですが、
>汚かったから直した。関数を必要のないのにいちいち変数に入れるなよな。(オリジナルを書いた人へ)
関数を変数に入れるのって、だらしないコードを書かないためって
good partsに書いてあったので、その考え方ではないのかと思ってます。
>>173
はい。関数名には、動詞+名詞って命名します。
日経ソフトウェアでは~Creatorって載ってました。
class使う人書き方だったんですね。
だいたい昼休みは日経ソフトウェア読んでるのですが、コードの
間違えって結構ありますね。
まぁ、掲載プログラムは記事補足用で動作保証しないって冒頭に書いてありますけど
ありがとうございます。
やっぱ間違えですが、
>汚かったから直した。関数を必要のないのにいちいち変数に入れるなよな。(オリジナルを書いた人へ)
関数を変数に入れるのって、だらしないコードを書かないためって
good partsに書いてあったので、その考え方ではないのかと思ってます。
>>173
はい。関数名には、動詞+名詞って命名します。
日経ソフトウェアでは~Creatorって載ってました。
class使う人書き方だったんですね。
だいたい昼休みは日経ソフトウェア読んでるのですが、コードの
間違えって結構ありますね。
まぁ、掲載プログラムは記事補足用で動作保証しないって冒頭に書いてありますけど
あー、あの本か。あれは俺が考えた最強~略だからな。
なんで「だらしないコード」って言ってるかわかる?
説明できないからなんだよ。
他の言語とか使っていればわかるけど、
普通は関数の順番はどっちを先に書いても良いものなんだ。
変数に代入すると、それができなくなるというデメリットが有る。
順番を考えなくていいものに、わざわざ不要な順番という概念を持ち込むことになる。
それに行頭がfunctionから始まると、ここが処理の開始地点だとぱっと見わかるし、
変数に代入しない分単純にタイプ数が短くなる。
昔から関数の定義は「function 名前」なわけで、式で書けるからといって
なんでも式を使うというのは何も考えてないだけ。適切なものを正しく使うべき。
なんで「だらしないコード」って言ってるかわかる?
説明できないからなんだよ。
他の言語とか使っていればわかるけど、
普通は関数の順番はどっちを先に書いても良いものなんだ。
変数に代入すると、それができなくなるというデメリットが有る。
順番を考えなくていいものに、わざわざ不要な順番という概念を持ち込むことになる。
それに行頭がfunctionから始まると、ここが処理の開始地点だとぱっと見わかるし、
変数に代入しない分単純にタイプ数が短くなる。
昔から関数の定義は「function 名前」なわけで、式で書けるからといって
なんでも式を使うというのは何も考えてないだけ。適切なものを正しく使うべき。
>>177
すごい無駄だけどこうだね
function osu(){
document.write("<input type='button' onclick='osu()'/>");
document.write("<div>あああ</div>");
}
すごい無駄だけどこうだね
function osu(){
document.write("<input type='button' onclick='osu()'/>");
document.write("<div>あああ</div>");
}
関数の巻き上げとは、前方宣言がいらないこと
関数定義より先に、その関数を使える
関数宣言(function文)
一方、関数式は、関数を変数に代入したもの
どういう時に、どっちを使えばよいのか、わからない
関数定義より先に、その関数を使える
関数宣言(function文)
一方、関数式は、関数を変数に代入したもの
どういう時に、どっちを使えばよいのか、わからない
こーゆーの?funcはいつ使うかわからないとして
if(なんたらかんたら){
func=function(){alert("なんたら");}
}else{
func=function(){alert("かんたら");}
}
func();
if(なんたらかんたら){
func=function(){alert("なんたら");}
}else{
func=function(){alert("かんたら");}
}
func();
>>176
function文は存在しない(Firefoxにそれらしき独自拡張はあるけど)
関数宣言や関数定義というならわかる
> function式はどこに書いても動くのがだらしないコード
関数定義とfunction式を逆に覚えてるんじゃないか?
関数定義なら関数スコープの始めに変数の実体化が発生するのだが
その手のコーディングスタイルを気にするなら関数の始めに関数定義、変数宣言すると良い
function式を使うのなら関数名は付けた方がよい(IE8-の名前付き関数式の挙動に注意)
function文は存在しない(Firefoxにそれらしき独自拡張はあるけど)
関数宣言や関数定義というならわかる
> function式はどこに書いても動くのがだらしないコード
関数定義とfunction式を逆に覚えてるんじゃないか?
関数定義なら関数スコープの始めに変数の実体化が発生するのだが
その手のコーディングスタイルを気にするなら関数の始めに関数定義、変数宣言すると良い
function式を使うのなら関数名は付けた方がよい(IE8-の名前付き関数式の挙動に注意)
>>183
そういう状況も有り得るね
あと、Google Style Guideには
×
if (x) {
function foo() {}
}
○
if (x) {
var foo = function() {};
}
と書いてある
現状のJavaScriptエンジンでは問題無く動くようだが、ブロック内にfunctionを書くのは
未定義な仕様だから将来的な事を考えてやめとけということだ
そういう状況も有り得るね
あと、Google Style Guideには
×
if (x) {
function foo() {}
}
○
if (x) {
var foo = function() {};
}
と書いてある
現状のJavaScriptエンジンでは問題無く動くようだが、ブロック内にfunctionを書くのは
未定義な仕様だから将来的な事を考えてやめとけということだ
>>189
> ブロック内にfunctionを書くのは未定義な仕様だから
そもそもifでfunctionって書きたいことってないだろう?
動的に関数を作りたい時と静的に関数を作りたい時
人はこの二つを完全に区別して考えてるよね?
function foo() { } って書いてあったら
この関数はfooという名前であり、fooにはこの関数以外になることはない。
var foo = function() {} って書いてあったら
これ多態かな? もしかしてfooには別の関数が入ることがある。
と考えてるでしょ?
ifの中でfunctionを書きたくなることはないが、
fooに関数を代入したいことはある。それはifの条件によって
fooに入れる関数を変えたい時。すなわち多態。
fooに入れる関数が変わらないのならfunction foo() {} って書いたほうが
明確だよね。
> ブロック内にfunctionを書くのは未定義な仕様だから
そもそもifでfunctionって書きたいことってないだろう?
動的に関数を作りたい時と静的に関数を作りたい時
人はこの二つを完全に区別して考えてるよね?
function foo() { } って書いてあったら
この関数はfooという名前であり、fooにはこの関数以外になることはない。
var foo = function() {} って書いてあったら
これ多態かな? もしかしてfooには別の関数が入ることがある。
と考えてるでしょ?
ifの中でfunctionを書きたくなることはないが、
fooに関数を代入したいことはある。それはifの条件によって
fooに入れる関数を変えたい時。すなわち多態。
fooに入れる関数が変わらないのならfunction foo() {} って書いたほうが
明確だよね。
>>181
> どういう時に、どっちを使えばよいのか、わからない
普通は関数定義だよ。なぜなら殆どの場合
関数の名前(変数)とそれが示す関数は変わらないから。
もし、変数に入れる関数が変わることがあるならば、
関数式を使えば良い。
> どういう時に、どっちを使えばよいのか、わからない
普通は関数定義だよ。なぜなら殆どの場合
関数の名前(変数)とそれが示す関数は変わらないから。
もし、変数に入れる関数が変わることがあるならば、
関数式を使えば良い。
>>191
>var foo = function() {} って書いてあったら
>これ多態かな? もしかしてfooには別の関数が入ることがある。
関数定義でも後から再代入すれば foo が別の関数を参照する状況を作り出せるはずだが
function foo () { console.log('a'); }
function hoge () { console.log('b'); }
foo = hoge;
foo(); // b
関数式にすれば、現仕様(ES5)でも>>189の状況を作り出すことは出来る
var x =0.
foo = x ? function foo () { console.log(foo.name); } : function hoge () { console.log(hoge.name); };
foo(); // hoge
多態性は String.prototype.toString と Object.prototype.toString の関係と理解していたのだが、私の理解が間違っているのだろうか
>var foo = function() {} って書いてあったら
>これ多態かな? もしかしてfooには別の関数が入ることがある。
関数定義でも後から再代入すれば foo が別の関数を参照する状況を作り出せるはずだが
function foo () { console.log('a'); }
function hoge () { console.log('b'); }
foo = hoge;
foo(); // b
関数式にすれば、現仕様(ES5)でも>>189の状況を作り出すことは出来る
var x =0.
foo = x ? function foo () { console.log(foo.name); } : function hoge () { console.log(hoge.name); };
foo(); // hoge
多態性は String.prototype.toString と Object.prototype.toString の関係と理解していたのだが、私の理解が間違っているのだろうか
>>184
>function文は存在しない(Firefoxにそれらしき独自拡張はあるけど)
>関数宣言や関数定義というならわかる
good parts 132ページには、
これはfunction文だ
function foo() {}
って載ってるのですが、function文って言い方が関数宣言や関数定義って
言う方が正しいってことですか?
または、good partsって2008年に出版されたので、function文って言い方
がもう2014年ではしないってことでしょうか?
>function文は存在しない(Firefoxにそれらしき独自拡張はあるけど)
>関数宣言や関数定義というならわかる
good parts 132ページには、
これはfunction文だ
function foo() {}
って載ってるのですが、function文って言い方が関数宣言や関数定義って
言う方が正しいってことですか?
または、good partsって2008年に出版されたので、function文って言い方
がもう2014年ではしないってことでしょうか?
function hoge() {
}
これはステートメントなんじゃないか?
}
これはステートメントなんじゃないか?
$("#ultest > li").on("click",function(){
alert("test");
});
$("#add").click(function(){
$("#ultest").append("<li>あああ</li>");
});
これで後から追加したli要素をクリックしてもポップアップが出ません。
onって将来的に追加した要素でも動くんじゃなかったんでしょうか?
alert("test");
});
$("#add").click(function(){
$("#ultest").append("<li>あああ</li>");
});
これで後から追加したli要素をクリックしてもポップアップが出ません。
onって将来的に追加した要素でも動くんじゃなかったんでしょうか?
function hoge(){} は FunctionDeclaration。あえて日本語で言えば「関数宣言」(関数文とも言うらしい?ググったら出てくるので)
(function hoge(){}) は FunctionExpression。あえて日本語で言えば「関数式」
関数宣言はStatement(ステートメント)に含まれない
http://www.ecma-international.org/ecma-262/5.1/#sec-14
関数式はStatement(ステートメント)に含まれる
http://www.ecma-international.org/ecma-262/5.1/#sec-A.4
(function hoge(){}) は FunctionExpression。あえて日本語で言えば「関数式」
関数宣言はStatement(ステートメント)に含まれない
http://www.ecma-international.org/ecma-262/5.1/#sec-14
関数式はStatement(ステートメント)に含まれる
http://www.ecma-international.org/ecma-262/5.1/#sec-A.4
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.121 + (1001) - [100%] - 2022/11/29 16:30
- + JavaScript の質問用スレッド vol.141 + (881) - [97%] - 2021/4/19 9:00
- + JavaScript の質問用スレッド vol.129 + (926) - [97%] - 2017/7/27 13:45
- + JavaScript の質問用スレッド vol.131 + (1000) - [97%] - 2017/1/25 8:01
- + JavaScript の質問用スレッド vol.120 + (1002) - [97%] - 2014/11/8 1:15
- + JavaScript の質問用スレッド vol.122 + (1004) - [97%] - 2015/2/14 4:45
- + JavaScript の質問用スレッド vol.122 + (116) - [97%] - 2018/5/2 18:30
- + JavaScript の質問用スレッド vol.129 + (981) - [97%] - 2016/5/5 8:16
- + JavaScript の質問用スレッド vol.128 + (1001) - [97%] - 2016/2/26 6:45
- + JavaScript の質問用スレッド vol.131 + (1004) - [97%] - 2018/3/7 13:30
- + JavaScript の質問用スレッド vol.123 + (966) - [97%] - 2020/10/20 2:30
- + JavaScript の質問用スレッド vol.127 + (1001) - [97%] - 2016/2/4 0:15
- + JavaScript の質問用スレッド vol.127 + (160) - [97%] - 2021/7/16 9:30
- + JavaScript の質問用スレッド vol.126 + (952) - [97%] - 2015/11/18 13:15
- + JavaScript の質問用スレッド vol.126 + (348) - [97%] - 2023/1/12 17:00
- + JavaScript の質問用スレッド vol.125 + (1001) - [97%] - 2015/10/7 17:45
- + JavaScript の質問用スレッド vol.123 + (1002) - [97%] - 2015/4/27 23:30
トップメニューへ / →のくす牧場書庫について