いくつかのJavaScriptクイズ

AX = A = {}、深い理解の代入式

{X = OのVAR :. 1}; 
VARのA = O; 

AX = A = {名前:100;} 

にconsole.log(AX); //は不定
にconsole.log(OX)を; // {名} 100 

// = {名称= AX:100}; 
//等価= AX(= {名称:100} ) ; 
//最初の斧基準を計算し、計算(A = {名前:100} )戻り値

速記if文

VAR条件=真、無感覚= 0; 
IF(条件){ 
    アラート( '雨人')
} 
IF(条件){ 
    麻痺= 1 + 2。
}

に相当

VAR条件=真、無感覚= 0; 
条件&&警告(「雨男」); 
条件&&(無感覚= 1 + 2)。

&&と||値を算出します

(真&& 222)。// 222 
!!(真&& 222)。//真
(偽&& 222)。//偽
 
    
(偽|| 222)。// 222 
!!(偽|| 222)。//真

!!変数は、ブール値と等しい元の値を返し

建設のオブジェクト

関数オブジェクト(){[ネイティブコード]} 
のObject.prototype = { 
	コンストラクタ:関数オブジェクト(){[ネイティブコード]}、
	hasOwnPropertyを:にfunction hasOwnProperty(){[ネイティブコード]}、
	isPrototypeOf:機能isPrototypeOf(){[ネイティブコード]}、
	のpropertyIsEnumerable:にfunction propertyIsEnumerable(){[ネイティブコード]}、
	のtoLocaleString:関数のtoLocaleString(){[ネイティブコード]}、
	のtoString:関数のtoString(){[ネイティブコード]}、
	のvalueOf:関数のvalueOf(){ [ネイティブコード]} 
}。

Object.prototype.constructor ===オブジェクト。//真

詳細のいくつかのプロトタイプを作成

VaRのA =関数(){ 
    this.name = '雨人'; 
}。
A.prototype = { 
    名: 'cnblogs' 
}。
VAR 0 =新しいA(); 
console.log(o.name)。// 'レインマン'
関数B = VAR(){}; 
B.prototypeが= { 
    名称: 'OBJ-B' 
}; 

VAR新しい新B = O(); 
o.name = 'OBJ-C'; 
o.nameを削除、
にconsole.log( o.name); // 'OBJ-B '、 雨水管のプロトタイプチェーン

オブジェクトを作成し、プロトタイプチェーンを保ちます

O関数= VAR(OBJ){ 
    関数T(){} 
    T.prototype = OBJ、
    新しい新しいTを(返す); 
}; 

VAR OBJ = {名: 'OBJ'、年齢:0}、
    OBJ1が= O(OBJ)
    O = OBJ2(OBJ1); 

//チェーンのプロトタイプを変更し、チェーンは、すべてのプロトタイプ変わる
obj.name = 'スーパークラス';     
にconsole.log(obj1.name); // 'スーパー' 
はconsole.log(obj2.name ); // 'スーパー' 

//各層を個別に処理することができる
= 100 obj1.name; 
にconsole.log(obj1.name); 100 // 
obj1.nameを削除; //ストームドレインプロトタイプチェーン
はconsole.log(OBJ1。名); // 'スーパー'

ます。https://www.cnblogs.com/rainman/archive/2010/10/16/1853222.htmlで再現

おすすめ

転載: blog.csdn.net/weixin_34353714/article/details/93561269