[過去ログ] JavaScript の質問用スレッド vol.125 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
973
(2): (ワッチョイ 551d-1fOb [180.178.89.53]) 2023/11/29(水)23:49 ID:oO9dmq1+0(1) AAS
const num = 1;
とした時、numはCやJavaのint型と違って、1という値のオブジェクトを参照している
という理解でよろしいでしょうか?
(numという名前でラベリングされたメモリ領域には、1そのものではなく
数値オブジェクトへの参照値が入っている?)
974
(1): (ワッチョイ e501-3M3b [60.118.124.10]) 2023/11/30(木)04:02 ID:uIFlL3tD0(1) AAS
>>973
1 はプリミティブ値。
Object型ではない。
975
(2): 973 (ワッチョイ 551d-1fOb [180.178.89.53]) 2023/11/30(木)22:41 ID:l5hD/Y3Y0(1) AAS
>>974
レスありがとうございます

分かりました
文字列('Hello World'など)もプリミティブなんですよね
どうやって内部で実装されてるんですか?
976
(1): (ワッチョイ cb01-0ikQ [2001:240:2461:5256:*]) 2023/11/30(木)22:57 ID:mSFTiyup0(1) AAS
MDNをまず読みましょう
外部リンク:developer.mozilla.org
977
(2): (ワッチョイ 25f0-5Z4W [220.146.53.208]) 2023/11/30(木)23:13 ID:5k4SwxyG0(1) AAS
>>973
実装的には全て参照扱いだよ
ただし数値の場合は参照(ポインタ)そのものに数値を埋め込むという方法
だから全て参照だけどメモリは消費しないというハック
978
(1): (ワッチョイ e501-3M3b [60.118.124.10]) 2023/12/01(金)01:54 ID:Bo4sqMI/0(1) AAS
>>975
質問が大雑把過ぎる
もっと具体的に詳しく
979
(1): 975 (ワッチョイ 691d-zrcD [180.178.89.53]) 2023/12/02(土)04:48 ID:3pMMmiCv0(1) AAS
返信くれた方々、ありがとうございます

>>976
TOEICのスコア400点台だったので厳しいです…

>>977
参照扱いでもプリミティブ型って言うんですか?
Javaではintやdoubleなど参照を用いずにデータを記憶する型をプリミティブ型と
呼んでいたので、少し混乱しています…

>>978
すみません、以後気を付けます
980
(1): (ワッチョイ 99ca-egvc [2400:2200:6f3:92ab:*]) 2023/12/02(土)10:49 ID:qpNh64Np0(1) AAS
>>977は気にしなくていいよ
英語苦手でもプリミティブには7つの型がある、ぐらいは読めるだろう
あと日本語のページがないか調べるぐらいはしよう
外部リンク:developer.mozilla.org
981
(1): (ワッチョイ 91ca-j/4L [122.132.80.240]) 2023/12/02(土)11:43 ID:/unkk9Eq0(1) AAS
>>979
そもそもそんなことを気にしてどうするの?
何がしたくての質問?

ぶっちゃけ表向き気にするべきなのは、その変数 a を別の変数 b に代入して、b を操作したら a まで同じように変わるのかどうかだけだと思うよ。
982
(2): 979 (ワッチョイ 691d-zrcD [180.178.89.53]) 2023/12/03(日)12:45 ID:FUDcVj1n0(1) AAS
>>980
分かりました
ありがとうございます

>>981
レスありがとうございます
うーん、まあこだわりとでも言いましょうか…
個人的にはそこまで知っておくことは無駄ではないと思います
983
(1): (ワッチョイ c1b6-egvc [2400:2200:6d6:9e9c:*]) 2023/12/03(日)13:08 ID:tV1DejKO0(1) AAS
>>975の質問なんかは明らかに自分のスキルや理解力に不相応なことを知ろうとしてない?
それを知ろうとするのはもっと力を付けてからがいいと思う
984
(2): (ワッチョイ 1901-+tyV [60.118.124.10]) 2023/12/03(日)14:24 ID:GsReymgf0(1) AAS
>>982
実装を知る以前に仕様は理解してる?
「仕様書のここをどうやって実装しているか、を知りたい」なら誰かしら答えるかもしれないが、そのようなレベルにも見えない
仕様を理解せずして、実装を理解するのは無理
985
(1): (オイコラミネオ MM95-j/4L [150.66.80.109]) 2023/12/03(日)17:15 ID:TpyXoIhbM(1) AAS
>>984
乗っかって補足すると、同じ仕様の実装なんて何通りもあるのよね。
そこであえて実装を知りたいというなら、その理由も書く方が間違いないよね。
986
(1): 982 (ワッチョイ 691d-zrcD [180.178.89.53]) 2023/12/04(月)23:09 ID:GWbm6wp00(1) AAS
レスありがとうございます
遅くなってすいません

>>983
そうですよね
まあ単純に、文字列である以上、変数用に確保したメモリ領域内に簡単には収まらない
だろうなと推測したんです
でも不変な値なら参照使わなくても収まるのかな

>>984
微妙です
入門書を読んで間もないレベルです
省4
987
(1): (ワッチョイ a95f-i/h+ [14.8.104.32]) 2023/12/04(月)23:27 ID:lRGkzbxI0(1) AAS
そのレベルを気にする人はもうフレームワーク作るレベルだろう
988
(1): (アウアウウー Sa9d-/D3x [106.146.123.7]) 2023/12/05(火)20:06 ID:gtr9NjJza(1) AAS
>>982
あ、ややこしい書き方してすまん
単にuint64_tが値の参照でオブジェクトの場合はポインタが入ってて
整数の場合はそのまま使ってると言うことを言いたかっただけ
typedef uint64_t JsValue;

JsValueが「値」を指す参照

JsValue obj = createObject(); // Object
JsValue smi = createSmi(); // Small Integer

こうすることでオブジェクトも数値も同じように扱える
V8もJSCも全部これ
989: 982,986 (ワッチョイ 691d-zrcD [180.178.89.53]) 2023/12/05(火)23:32 ID:c1y4Tvg20(1) AAS
レスありがとうございます

>>987
そうなんですかね

>>988
内容がハイレベルですね
990
(1): (ワッチョイ 1901-+tyV [60.120.204.187]) 2023/12/06(水)00:21 ID:HaZOzd170(1) AAS
>>986
入門書を読んで間もないレベルなら、口が避けても「仕様を理解した」とは言えない
実装を覚えるのは仕様書を読めるようになった後だろう
外部リンク:262.ecma-international.org
991
(3): (ワッチョイ 4b6e-yLTa [240a:61:11a:237d:*]) 2023/12/09(土)10:39 ID:npLWblUF0(1) AAS
素人な質問で申し訳有りません。
下記のスクリプトで何故か関数丸々出力されてしまうのです。
テキストでは改行が多すぎる為、投稿出来ないため画像で申し訳有りません。
下のグレーのフォントが出力結果です。
出力指定していないので、何も出力されないはずなのですが…。

画像リンク[jpg]:i.imgur.com
992
(1): (ワッチョイ 4501-zRS8 [60.106.64.223]) 2023/12/09(土)11:31 ID:In8GNdRi0(1) AAS
>>991
画像でコート見るのはしんどいので、>>2のサイト使って現象が再現するコードを掲示してほしい
1-
あと 10 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.015s