[過去ログ]
JavaScript の質問用スレッド vol.125 (1002レス)
JavaScript の質問用スレッド vol.125 http://mevius.5ch.net/test/read.cgi/tech/1659855460/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
530: デフォルトの名無しさん (オッペケ Sr4f-JZbg [126.194.240.4]) [sage] 2023/01/05(木) 12:50:07.72 ID:w+0CNSMQr 関数リテラルの説明についてはここが一番しっくりくる https://www.javadrive.jp/javascript/function/index5.html 「関数リテラルを使った関数定義」って言い回しを強調してるのが良い だから関数リテラルを引数として渡すって言ったらこういうことだよなって dispNum(10, 8, function(x, y){ return (x + y) / 2; }); http://mevius.5ch.net/test/read.cgi/tech/1659855460/530
531: デフォルトの名無しさん (ワッチョイ 8202-9yt5 [27.92.176.51]) [sage] 2023/01/05(木) 14:46:47.66 ID:EVXeoiyo0 すいません。やっぱり関数リテラルという意味を理解したい。。でも↓この質問でわかるかも。 だれか答えていただけますでしょうか? --- 次のコードがあります。1から5のうち どれが適切でしょうか? let dispMessage = function(msg){ console.log(msg); }; 1. function(msg){console.log(msg);} は関数リテラルである。 2. dispMessage は関数リテラルである。 3. let dispMessage = function(msg){ console.log(msg); }; が全体として関数リテラルである。 4. 全て関数リテラルとはいえない。 5. 関数リテラルとは、用法のことであり、 コード部分を表すものではない。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/531
532: デフォルトの名無しさん (ワッチョイ e67b-28F+ [153.178.229.141]) [sage] 2023/01/05(木) 14:53:38.67 ID:mmmJuCOb0 >>531 ぐぐったら以下の様に出る。結構理解しやすいと思うが。 リテラルとは リテラルとは、プログラムのソースコードにおいて使用される、数値や文字列を直接に記述した定数のことである。 変数の対義語であり、変更されないことを前提とした値である。 プログラミング言語のコード中にリテラルが挿入される場合には、判別のために特定の書式を用いる必要がある。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/532
533: デフォルトの名無しさん (ワッチョイ 8202-9yt5 [27.92.176.51]) [sage] 2023/01/05(木) 15:02:17.50 ID:EVXeoiyo0 うん。「リテラル」ということばによって惑わされてきた気がする。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/533
534: デフォルトの名無しさん (アウアウウー Sa6b-y47Y [106.155.3.231]) [sage] 2023/01/05(木) 15:06:19.08 ID:akcN5qw4a 関数リテラルは関数として評価可能な右辺値と考えておけばまあいいんじゃないの 正確な定義は構文木の定義を見れば書いてある http://mevius.5ch.net/test/read.cgi/tech/1659855460/534
535: デフォルトの名無しさん (オッペケ Sr4f-JZbg [126.208.232.21]) [sage] 2023/01/05(木) 15:10:13.35 ID:HxGsZjLmr >>531 1だろう let s = "abc"; の"abc"を文字列リテラルと呼ぶけどそれを代入した変数sを 文字列リテラルとは呼ばないでしょ http://mevius.5ch.net/test/read.cgi/tech/1659855460/535
536: デフォルトの名無しさん (オッペケ Sr4f-JZbg [126.208.238.17]) [sage] 2023/01/05(木) 15:28:42.13 ID:c7qQflpDr >>531 で、繰り返しになるけど本やサイトによっても説明がまちまちで MDN探しても出てこないような用語だからあまり囚われない方がいい 理解しようとして時間をかけるだけ無駄 http://mevius.5ch.net/test/read.cgi/tech/1659855460/536
537: デフォルトの名無しさん (ワッチョイ 9f63-uhAF [180.58.213.164]) [sage] 2023/01/05(木) 15:35:00.85 ID:m3Sm+5EJ0 >>531 強いて言えば1かな でも数値・文字列・正規表現リテラルみたいにプログラム中に単独で書くことは出来ないね 変数に代入するなり関数の引数に使うなりしないとエラーになる 英語でもfunction literalっていうみたいだけど関数リテラルってあんまりいい言葉だと思わないなあ 33; "hello"; /^js$/; function() {return true}; //SyntaxError こんなことにこだわるよりもっと基本的なこと勉強した方方がいいんじゃないの? http://mevius.5ch.net/test/read.cgi/tech/1659855460/537
538: デフォルトの名無しさん (ワッチョイ 8202-9yt5 [27.92.176.51]) [sage] 2023/01/05(木) 15:38:00.87 ID:EVXeoiyo0 あ。 誤解していたところがとけました。 当初は「2」かと妄信していたので、 だいぶ合点がとれました。 関数リテラルが無名関数と同義という説明も いやそうではないという説明も すっきりしました。 皆さん長々とお付き合いいただき ありがとうございました。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/538
539: デフォルトの名無しさん (ワッチョイ 66db-TwI4 [217.178.96.73]) [sage] 2023/01/05(木) 19:28:05.49 ID:j61eMuZ00 >>511 技術評論社のjQuery本格入門はものすごく読みづらかった。 もっと分かり易い言葉で解説して欲しかった。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/539
540: デフォルトの名無しさん (ワッチョイ 8202-9yt5 [27.92.176.51]) [sage] 2023/01/05(木) 20:02:55.70 ID:EVXeoiyo0 >>534 >関数リテラルは関数として評価可能な右辺値と考えておけばまあいいんじゃない この発想というか常識が無かったなあ。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/540
541: デフォルトの名無しさん (JP 0H4f-ChaJ [126.249.157.89]) [sage] 2023/01/05(木) 20:55:47.77 ID:XhDooIHVH >>531 自分もあまりJS詳しくないんですけど リテラルっていうのは、括るもの、という意味合いでは? オブジェクトリテラルっていうのは波かっこで括るオブジェクト={} 文字列のリテラルは、""や’’ 展開のリテラルは、``とか 関数のリテラルというのは、functionを指定した引数括弧つきのオブジェクトリテラルでfunction(){} 関数リテラルといえば、例えばfunction func(){...} とした場合、{...}は変数funcに文字列として代入されます そしてfuncは関数オブジェクトと指定されていて 関数の実行は()を読み込むことで実行されます func 文字列 () 関数の実行 http://mevius.5ch.net/test/read.cgi/tech/1659855460/541
542: デフォルトの名無しさん (JP 0H4f-ChaJ [126.249.157.89]) [sage] 2023/01/05(木) 21:01:26.21 ID:XhDooIHVH >>531 解決済みだったようですみませんでした 参考までに追加 function func(){return 1} とした場合 console.log(func) と console.log(func()) を見比べるとわかりますが、 func変数の中身は、function指定された文字列で func()は関数を実行した結果の1が表示されます http://mevius.5ch.net/test/read.cgi/tech/1659855460/542
543: デフォルトの名無しさん (オッペケ Sr4f-JZbg [126.208.231.97]) [sage] 2023/01/05(木) 21:40:35.47 ID:n/EqvkXYr >>541 JavaScriptのリテラルに関してはまず下記を読んでください 括ってあればリテラルというわけではないです https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Grammar_and_types#%E3%83%AA%E3%83%86%E3%83%A9%E3%83%AB http://mevius.5ch.net/test/read.cgi/tech/1659855460/543
544: デフォルトの名無しさん (JP 0H4f-ChaJ [126.249.157.89]) [sage] 2023/01/05(木) 22:26:48.61 ID:XhDooIHVH >>543 括る、というのはそういう意味かと リテラルはリテラルなので括る必要はなくて プリミティブは、これは文字列です、 これは配列です、 これはオブジェクトです とエンジンに理解させるための記述なのかと思いまして http://mevius.5ch.net/test/read.cgi/tech/1659855460/544
545: デフォルトの名無しさん (ワッチョイ a62d-IQJE [121.102.19.45]) [sage] 2023/01/05(木) 22:39:53.19 ID:scsW7zY90 リテラルはベた書きで良かろう http://mevius.5ch.net/test/read.cgi/tech/1659855460/545
546: デフォルトの名無しさん (オッペケ Sr4f-JZbg [126.208.231.97]) [sage] 2023/01/05(木) 22:41:03.03 ID:n/EqvkXYr >>544 申し訳ないけど全体的に文意が取れません 1行目の「そういう意味」は何を指してますか? http://mevius.5ch.net/test/read.cgi/tech/1659855460/546
547: デフォルトの名無しさん (JP 0H4f-ChaJ [126.249.157.89]) [sage] 2023/01/05(木) 22:57:51.54 ID:XhDooIHVH 括ることで、エンジンに対して、これは配列オブジェクトだよとか これは{}だよとか、これは文字列だよとか、そういうことを伝えているってことですけど http://mevius.5ch.net/test/read.cgi/tech/1659855460/547
548: デフォルトの名無しさん (ワッチョイ 8201-+uJR [219.204.123.70]) [sage] 2023/01/05(木) 22:59:39.77 ID:O+NRT3S+0 >>541 > リテラルっていうのは、括るもの、という意味合いでは? >>544 > リテラルはリテラルなので括る必要はなくて 自分で何書いてるのか理解できてる? http://mevius.5ch.net/test/read.cgi/tech/1659855460/548
549: デフォルトの名無しさん (ワッチョイ 8201-+uJR [219.204.123.70]) [sage] 2023/01/05(木) 23:00:08.63 ID:O+NRT3S+0 >>547 数値リテラル http://mevius.5ch.net/test/read.cgi/tech/1659855460/549
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 453 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.009s