ホームページ  >  記事  >  ウェブフロントエンド  >  Javascript における参照型の転送に関する知識ポイントの簡単なまとめ

Javascript における参照型の転送に関する知識ポイントの簡単なまとめ

黄舟
黄舟オリジナル
2017-03-22 14:56:471161ブラウズ

この記事では主にJavaScriptQuote型転送に関する知識ポイントを紹介していますので、必要な方はぜひ参考にしてみてください。

JSどの型が参照型ですか?

オブジェクトクラス型はすべて参照型です(関数、配列、日付、正規表現...)

JSのどの型が値によって渡されますか?

基本型はすべて値渡しです。 値渡しとは、コピーを再コピーして渡すことを意味します。

基本型をラップすることで、次のことが可能になります。参照型として使用します。Pass。
ECMAScript には、Boolean、String、Number の 3 つの特別な参照型 (基本的なパッケージ化型) が用意されています。

参照型と基本的なパッケージ化型の違い:

オブジェクト

は、ライフタイムが異なります。

を参照してください。コード:

var str = "hello js"; 
var str2 = str.substring(2,5); 


// str2的形成 在JS内部是这样实现的.

var str = new String('hello js');
var str2 = str.substring(2,5);
str = null ;

参照型メモリ割り当て

のような:

var o = {name: ‘kobe'};

スタック: 保存されるのは、ヒープ上のオブジェクトのメモリ アドレスを指すポインタです。操作にはポインタ ハンドルを使用します。

== と === の違いを理解する

"===" 厳密
演算子

厳密演算子の動作規則:
1.データ型

2 つの値の型が異なる場合は、直接 false を返します。 2.同じ型の基本データ型(文字列、ブール値、数値)

同じ型のプリミティブ型の値(数値、文字列、ブール値)を比較する場合、値が同じ場合の場合は true が返され、値が異なる場合は false が返されます。

3. 同じ型の複合データ型

2 つの複合型 (オブジェクト、配列、関数) のデータを比較する場合、それらの値が等しいかどうかを比較するのではなく、それらが同じ型を指しているかどうかを比較します。同じオブジェクト。

console.log( [1] === [1] ) // false

4、unknown と null

unknown と null は厳密にそれ自体と等価です。

console.log( null === null ) // true
console.log( undefined === undefined ) // true


"==" 等価演算子

等価演算子は、同じ型のデータを比較する場合、厳密な等価演算子とまったく同じように機能します。 異なる型のデータを比較する場合、等価演算子はまずデータに対して
型変換

を実行し、次にそれを厳密等価演算子と比較します。型変換ルールは次のとおりです (さまざまな型については以下で説明します):

1. これらはすべてプリミティブ型の値です。

プリミティブ型のデータは

数値型

に変換されます。

2. オブジェクトとプリミティブ型の値の比較

オブジェクト(ここでは数値や関数を含む一般化されたオブジェクトを指します)とプリミティブ型の値を比較する場合、オブジェクトは値に変換されます。プリミティブ型のものを比較して比較します。

3. 未定義とnull

unknownとnullを他の型の値と比較すると結果はfalseになり、相互に比較すると結果はtrueになります

console.log( null == undefined ) // true

4。

等価演算子は非表示です 型変換は直観に反する結果をもたらす可能性があります。

console.log( "" == "0" ) // false 
console.log( 0 == "" ) // true
console.log( 0 == "0" ) // true
console.log( false == "false" ) // false
console.log( false == "0" ) // true

もう 1 つは、未定義を含む
条件判定

で、コードに影響を与える可能性があります。

var a = undefined;
if(!a){
 console.log("1"); //1
}

var a = undefined;
if(a === null){
 console.log("1"); //无输出
}

まとめ

以上がJavascript における参照型の転送に関する知識ポイントの簡単なまとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。