JavaScript はオブジェクト指向言語です。「.」演算子を使用して、オブジェクトのプロパティとメソッドにアクセスできます。ただし、
結果は非常に単純ですが、よく考えてみると、文字列は値型ではありません。どうして属性とメソッドがあるのでしょう!
組み込みオブジェクト
JavaScript には、言語の基本機能を作成するための一連の組み込みオブジェクトがあります。詳しく見てみましょう
ブール値
ブール オブジェクトは、「true」または「false」の 2 つの値を表します。 (演算子 new を使用して) コンストラクターとして呼び出された場合、Boolean() は引数をブール値に変換し、その値を含むブール オブジェクトを返します。関数として呼び出された場合 (new 演算子なし)、Boolean() はその引数を単純にプリミティブ ブール値に変換し、値引数が省略されている場合、または 0、-0、null、""、false、に設定されている場合はこの値を返します。未定義、または NaN の場合、オブジェクトは false に設定されます。それ以外の場合は、true に設定されます (値引数が文字列「false」の場合でも)。
Boolean オブジェクトには、toString メソッドと valueOf メソッドが含まれます。Boolean は、条件ステートメントでの true または false の値の単純な判断に最もよく使用され、JavaScript を使用してロジックを作成する方法を提供します。
番号
Number オブジェクトは、いくつかの読み取り専用プロパティを含む数値ラッパーです
•MAX_VALUE:1.7976931348623157e 308 //JavaScript が処理できる最大数
•MIN_VALUE:5e-324 //JavaScript が処理できる最小数
•NEGATIVE_INFINITY:-Infiny //負の無限大
• POSITIVE_INFINITY:Infinity //正の無限大
•NaN:NaN //非数値
Number オブジェクトには、値の書式設定や変換に使用できるメソッドもいくつかあります
•toExponential //数値の文字列表現を指数形式で返します
•toFixed //数値を指定された小数点以下の桁数に四捨五入します
•toPrecision //オブジェクトの値が指定された数値を超えた場合指数表記に変換されます
•toString //数値の文字列表現を返します
•valueOf //オブジェクト
String
文字列オブジェクトはテキスト値のラッパーです。 String オブジェクトには、テキストの保存に加えて、テキストに関する情報を操作または収集するためのプロパティとさまざまなメソッドが含まれています。String オブジェクトを使用するためにインスタンス化する必要はありません。
String オブジェクトには、文字列の長さを返すために使用される読み取り専用の長さプロパティのみがあります。文字列オブジェクトには多くのメソッドがあります
•charAt
•charCodeAt
•concat
•fromCharCode
•indexOf
•lastIndexOf
•match
•replace
•search
•slice
•分割
•部分文字列
•部分文字列
•toLowerCase
•toUpperCase
オブジェクトのパッケージ化
JavaScript には、上記の 3 つのオブジェクトに加えて、Date、Array、Math などの組み込みオブジェクトもあります。これらの 3 つはよく使用されるため、これらのオブジェクトはよく知られています。上の例が何を意味するのかを見てください。
文字列のプロパティとメソッドが参照されている限り、JavaScript は新しい String を通じて文字列値を組み込みオブジェクト String に変換します。参照が終了すると、オブジェクトは破棄されます。したがって、上記のコードは実際には String オブジェクトの length プロパティと IndexOf メソッドを使用しています。
同様の理由で、数値とブール値も同様に処理されます。 、null および unknown には、対応するオブジェクトがありません。オブジェクトが生成されているので、こんな感じでできるでしょうか
結果は 10 を返しませんでしたが、未定義でした。私たちは釣り合うということに同意しませんでしたか?先ほど述べたように、コードの 2 行目は一時的な String オブジェクトを作成するだけであり、その後、コードの 3 行目で新しい一時オブジェクトが作成されます (これが、IE の古いバージョンで文字列の処理が頻繁に非効率になる理由の 1 つです)。 len属性はありません。作成された一時オブジェクトがパッケージング オブジェクトになります。単純なコード行にこれほど多くのジェスチャが含まれるとは予想していませんでした。