<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                [TOC] > JavaScript函數其三:分組中的函數表達式 **函數表達式和函數聲明**: ~~~ function foo(){} // 聲明,因為它是程序的一部分 var bar = function foo(){}; // 表達式,因為它是賦值表達式的一部分 ~~~ **函數聲明會在代碼塊中被提到最前面**,而表達式不會。 ~~~ alert(fn()); function fn() { return 'Hello world!'; } ~~~ `()`是一個**分組操作符**,它的內部只能包含表達式,在使用`eval`對 JSON 進行執行的時候,JSON 字符串通常被包含在一個圓括號里`eval('(' + json + ')')`,這樣做的原因就是因為分組操作符,也就是這對括號,會讓解析器強制將JSON 的花括號解析成表達式而不是代碼塊。 **Module模式** ~~~ var Calculator = function (eq) { //這里可以聲明私有成員 var eqCtl = document.getElementById(eq); return { // 暴露公開的成員 add: function (x, y) { var val = x + y; eqCtl.innerHTML = val; } }; }; var calculator = new Calculator('eq'); calculator.add(2, 2); ~~~ 每次用的時候都要 new 一下,也就是說每個實例在內存里都是一份copy。 **匿名閉包** ~~~ (function () { // ... 所有的變量和function都在這里聲明,并且作用域也只能在這個匿名閉包里 // ...但是這里的代碼依然可以訪問外部全局的對象 }()); ~~~ 對 module 進行擴展,添加新的屬性: ~~~ var module = (function(mod){ mod.moreFunc = function(){}; ... return mod })(module || (module = {})) ~~~ 若module已經存在,那么添加新的功能,若不存在,初始化為空對象再添加功能。 **克隆** ~~~ for (key in old) { if (old.hasOwnProperty(key)) { my[key] = old[key]; } } ~~~ **function的執行** 在`function`后面加個`()`就能執行一個方法,但是有一個需要注意的地方: ``` function(){}() ``` 該句會報錯,原因是方法是聲明式,所以不會生成一個有名字的對象來供`()`調用,但是用`()`包圍起來當作表達式就可以了: ``` (function(){})() ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看