日本好好热aⅴ|国产99视频精品免费观看|日本成人aV在线|久热香蕉国产在线

  • <cite id="ikgdy"><table id="ikgdy"></table></cite>
    1. 西西軟件下載最安全的下載網(wǎng)站、值得信賴的軟件下載站!

      首頁編程開發(fā)javascript|JQuery → Javascript初學(xué)者需要知道的一些與其他語言不通的知識(shí)

      Javascript初學(xué)者需要知道的一些與其他語言不通的知識(shí)

      相關(guān)軟件相關(guān)文章發(fā)表評(píng)論 來源:西西整理時(shí)間:2013/1/18 10:26:39字體大。A-A+

      作者:西西點(diǎn)擊:0次評(píng)論:0次標(biāo)簽: 初學(xué)者

      1. Javascript沒有類的概念。一般使用原型鏈繼承(prototypal inheritance)來模擬類。

      2. 除了null和undefined之外的任何數(shù)據(jù)類型都能表現(xiàn)成Object (behave like an object),包括Number類型和Function類型。

      var n = 42;
      function f() { alert("foo"); };
      
      alert("n is " + n.toString()); // "n is 42"
      alert(f.name + " is a function"); // "f is a function"

      注意,是“表現(xiàn)為object”,而不是“是object”。事實(shí)上,number, string和boolean是基本類型(primitives),除了這三個(gè)之外的都可以算作object,比如一個(gè)正則表達(dá)式也是一個(gè)object。 當(dāng)需要訪問基本類型變量的屬性時(shí),那些基本類型變量將被臨時(shí)轉(zhuǎn)換成object。 例如:

      "foobar".big();
      // is equivalent to
      new String("foobar").big();
      
      3.14.toFixed();
      // is equivalent to
      new Number(3.14).toFixed()

      另外,不能強(qiáng)行給基本類型變量(number, string, boolean)加上私有屬性。

      var a = "mystring",
          b = new String( "mystring" );
      
      Object.defineProperty( b, 'foo', { value: 42, enumerable: false });
      console.log(b.foo); // 42
      Object.defineProperty( a, 'foo', { value: 42, enumerable: false });
      // TypeError: Object.defineProperty called on non-object
      
      // trying another way:
      a.foo = 42;
      // remember, this is equivalent to:
      // new Number(a).foo = 42;
      // …so the 'foo' property is defined on the wrapper, not on 'a'
      console.log(a.foo); // undefined

      3. 如果變量名前不加上var,那么這個(gè)變量就是全局的。

      function setGlobal() {
        a = 42;
      }
      
      function setLocal() {
        var b = 23;
      }
      
      setGlobal();
      alert(a); // 42
      
      setLocal();
      alert(b); // ReferenceError: b is not defined

      4. this指針是由調(diào)用函數(shù)賦予的, 而不是由被調(diào)函數(shù)自身定義的。 例如:

      var a = {}, b = {};
      
      a.foo = 42;
      b.foo = 18;
      a.alertFoo = function() { alert(this.foo); };
      
      a.alertFoo(); // 42
      a.alertFoo.call(b); // 18

      5. 嚴(yán)格的相等判斷應(yīng)該使用===。例如 :

      0 == false 為真, 但是 0 === false 為假。

      6. 0, undefined, null, "", NaN 都是假值 (falsy)。

       這些值全都等同于false,但他們之間不能相互替換。

      7. 變量聲明會(huì)被提升到當(dāng)前作用域的頂端。 例如:下述代碼中,你認(rèn)為調(diào)用foo函數(shù)會(huì)返回什么?

      var a = 2;
      
      function foo() {
          return a;
          var a = 5;
      }

      它將返回undefined。 上述代碼等同于下述代碼:

      var a = 2;
      
      function foo() {
          var a; // 'a' declaration is moved to top
          return a;
          a = 5;
      }

      另一個(gè)例子: 下述代碼中,調(diào)用函數(shù)foo后變量a的值是什么?

      var a = 42;
      
      function foo() {
          a = 12;
          return a;
          function a(){}
      }

      答案是42。因?yàn)閒oo函數(shù)中變相聲明了a變量,因此a成了局部變量了。

      function foo() {
          function a() {} // local 'a' is a function
          a = 12; // local 'a' is now a number (12)
          return a; // return the local 'a' (12)
      }

      8. 參數(shù)在函數(shù)聲明中可以省略, 例如:

      function hello(name, age) {
        alert("Hello "+name+", you’re "+age+" years old!");
      }
      
      hello("Anon", 42); // "hello Anon, you’re 42 years old!"
      hello("Baptiste"); // "hello Baptiste, you’re undefined years old!"
      hello("Bulat", 24, 42); // "hello Bulat, you’re 24 years old!"

      9. 對(duì)于字符串,使用雙引號(hào)""和單引號(hào)''的效果是一樣的。

      10. Javascript代碼可以在瀏覽器環(huán)境之外運(yùn)行, 比如在Terminal或者HTTP服務(wù)器上。(例如 Node.js)

        相關(guān)評(píng)論

        閱讀本文后您有什么感想? 已有人給出評(píng)價(jià)!

        • 8 喜歡喜歡
        • 3 頂
        • 1 難過難過
        • 5 囧
        • 3 圍觀圍觀
        • 2 無聊無聊

        熱門評(píng)論

        最新評(píng)論

        發(fā)表評(píng)論 查看所有評(píng)論(0)

        昵稱:
        表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
        字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過審核才能顯示)
        推薦文章

        沒有數(shù)據(jù)