ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript では本当にすべてがオブジェクトなのでしょうか?

JavaScript では本当にすべてがオブジェクトなのでしょうか?

Susan Sarandon
リリース: 2024-11-16 13:10:03
オリジナル
386 人が閲覧しました

Is Everything Truly an Object in JavaScript?

JavaScript : オブジェクトのユビキタスな性質を理解する

JavaScript の概要について議論しているときに、「ほとんどすべてがオブジェクトである」ということがよく言われます。初心者は、特に文字列、数値、関数などの非伝統的なオブジェクトを扱う場合、この概念を理解するのに苦労するかもしれません。

プリミティブ値: 完全なオブジェクトではありません

重要ですJavaScript のすべてがオブジェクトであるわけではないことを明確にするためです。文字列、数値、ブール値などのプリミティブ値は、それ自体はオブジェクトではありません。これらは不変であり、メソッドやプロパティがありません。

オブジェクト ラッパーの登場

JavaScript では、プリミティブ (文字列、数値、ブール値) のオブジェクト ラッパーが導入されています。これらのラッパーはメソッドとプロパティを備えており、プリミティブ自体がこれらの機能を持っているかのような錯覚を引き起こします。プリミティブのプロパティまたはメソッドにアクセスすると、JavaScript は自動的にラッパー オブジェクトを作成し、そのオブジェクトに対してアクションを実行します。

動作例

コード例で説明してみましょう:

文字列の例:

const s = "Hello";
const sub = s.substring(1, 3); // Output: "el"
ログイン後にコピー

舞台裏で、JavaScript は s の String ラッパーを作成し、その部分文字列メソッドを呼び出します。

関数の例:

function greet() { return "Hello"; }
greet.name = "myGreeting"; // Property added to the function object
console.log(greet.name); // Output: "myGreeting"
ログイン後にコピー

結論

JavaScript のすべてがオブジェクトであるわけではありませんが、プリミティブ値は、対応するラッパーを通じてオブジェクトのような動作と対話できます。 。一方、関数は、プロパティとメソッドへのアクセスと操作の完全な機能を備えたオブジェクトです。

以上がJavaScript では本当にすべてがオブジェクトなのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート