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で再現