[過去ログ] JavaScript の質問用スレッド vol.125 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
502
(3): デフォルトの名無しさん (ワッチョイ 8701-1zgH [60.103.77.208]) [sage] 2023/01/04(水) 20:37:28.67 ID:UYb7FHhp0(1/3) AAS
外部リンク:developer.mozilla.org

外部リンク:developer.mozilla.org
リテラルに関数は含まれてないな

「関数リテラル=無名関数」が間違ってて、calcResult1 も calcResult2 は、関数リテラル。
とイコールで結んじゃうのは乱暴か
字義に従えば「無名関数」には生成時に名前をつけなかった、程度の意味しかないかと

ただ、関数式として生成された関数は変数に格納するか、でなければ他の関数の引数になるので、名前をつける意味はほぼない
結果的に関数式の関数は無名関数になることがほとんどで
503: デフォルトの名無しさん (ワッチョイ 8701-1zgH [60.103.77.208]) [sage] 2023/01/04(水) 20:40:11.89 ID:UYb7FHhp0(2/3) AAS
ここでいう「関数リテラル」は関数式で記述された関数のことで、名前があろうとなかろうと「関数リテラル」でいいんだと思う
504
(1): 502 (ワッチョイ 8701-1zgH [60.103.77.208]) [sage] 2023/01/04(水) 20:53:07.39 ID:UYb7FHhp0(3/3) AAS
途中送信で変になってるからまとめ直し

>>500,501
500(1): デフォルトの名無しさん (ワッチョイ 8202-9yt5 [27.92.176.51]) [] 2023/01/04(水) 19:01:57.33 ID:jNmuxM610(2/8) AAS
例えば以下の2つの関数があります。

■「function関数」を変数に格納
let calcResult1 = function calc(a,b){
return a*b;
}

■「無名関数」を変数に格納
let calcResult2 = function(a,b){
return a*b;
}

「無名関数」は「関数リテラル」と同義である。とさまざまな文献に記述されています。

ならば、
calcResult1
は、関数リテラルではない。

calcResult2
は、関数リテラルである。

という認識で間違っていないでしょうか?
501(2): デフォルトの名無しさん (ワッチョイ 8202-9yt5 [27.92.176.51]) [] 2023/01/04(水) 19:02:26.96 ID:jNmuxM610(3/8) AAS
SetInterval()
に与える引数は、関数リテラルでなくてはならないそうです。

となると、以下は誤りで、
SetInterval(calcResult1,1000);

以下なら問題ない
SetInterval(calcResult2,1000);

という理解でよろしいでしょうか?
その文脈での「関数リテラル」ってのは関数式で記述された関数のこと(>>502のリンク参照)で、名前の有無は関係ない
名前のあるcalcResult1 も 名前のないcalcResult2 も「関数リテラル」という理解でいいと思う
「無名関数」の「無名」には生成時に名前をつけなかった、程度の意味しかないかと

ただ、関数式として生成された関数は変数に格納するか、でなければ他の関数の引数になるので、名前をつける意味はほぼなくて結果的に無名関数になることがほとんどではある
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.034s