• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            專職C++

            不能停止的腳步

              C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
              163 Posts :: 7 Stories :: 135 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(28)

            我參與的團隊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            數組的解構與函數變參

            解構

            es6新增了一個解構功能,如下所示

            let [aa,bb,cc]= [1,2,3]; 
            console.log(aa,bb,cc);
            //顯示為1 2 3
            • 1
            • 2
            • 3
            • 1
            • 2
            • 3

            也就是將右邊數組的元素依次賦值給左邊數組列表中變量 .

            • 也可以是已經定義好的變量
            let aa,bb,cc; 
            [aa,bb,cc] = [1,2,3];
            • 1
            • 2
            • 1
            • 2
            • 可跳過,一些變量
            let [aa,,cc] = [1,2,3];
            • 1
            • 1
            • 可少于變量數量
            let [aa,bb,cc] = [1,2];   //cc===undefined; 
            //或let [aa,bb,cc] = [1,,3]; //bb===undefined;
            • 1
            • 2
            • 1
            • 2
            • 也可以用于函數返回多值
            function mmm(v) {     
            if(v=== true) {
            return [true,1,2,3];
            }
            else{
            return [false];
            }
            }
            let [result,bb,cc,dd] = mmm(true);
            if(result) {
            console.log(bb,cc,dd);
            }
            • 1
            • 2
            • 3
            • 4
            • 5
            • 6
            • 7
            • 8
            • 9
            • 10
            • 11
            • 12
            • 1
            • 2
            • 3
            • 4
            • 5
            • 6
            • 7
            • 8
            • 9
            • 10
            • 11
            • 12

            這個和lua的多值返回一樣的效果.可以簡化一些函數返回處理

            變量 操作符…

            對于函數變量,es2015增加了操作符…,實際上也是數組,大大簡化了變參的操作. 
            對于參數名稱,建議使用默認的args 
            - 常見使用

            function sum(…args) {
            let r = 0;
            for(let i = 0; i < args.length; i++) {
            r += args[i];
            }
            return r;
            }
            • 1
            • 2
            • 3
            • 4
            • 5
            • 6
            • 7
            • 1
            • 2
            • 3
            • 4
            • 5
            • 6
            • 7
            • 再調變參函數
            function printLog(…args) {
            console.log(…args); //這一步大大簡化了,如果是ES5那就頭痛了.要用arguments,
            }
            • 1
            • 2
            • 3
            • 1
            • 2
            • 3
            • 還可以很輕松的擴展參數
            function printLog(…args) {
            console.log("專有前綴",…args,"專有后綴");
            }
            • 1
            • 2
            • 3
            • 1
            • 2
            • 3
            • 因為…args是一個數組,也就是它可以用數組的方法操作.
            function printLog(...args) {
            for(let i = 0; i < args.length; i++) {
            console.log(args[i]);
            }
            args.push("end");
            console.log(...args);
            }
            • 1
            • 2
            • 3
            • 4
            • 5
            • 6
            • 7
            • 1
            • 2
            • 3
            • 4
            • 5
            • 6
            • 7
            • 用…還可以將數組插入的新數組中去,
            let u = [1,2,3]; 
            let u1 = […u,4,5];
            console.log(u1); //顯示為[1,2,3,4,5];
            • 1
            • 2
            • 3
            • 1
            • 2
            • 3

            后記

            到此,所有數組和相關筆記就沒有了,期待Node.js能完整支持es6,省得用babel再編譯了.再復雜的東西,都是由最簡單的元素組成.如果忽視最簡單的元素,就像JavaScript中的let,const,for,數組等,如果不能充分的理解和使用,你所的”高深代碼”能好到哪里去呢?

            posted on 2017-03-29 17:09 冬瓜 閱讀(1495) 評論(0)  編輯 收藏 引用 所屬分類: 原創javascript
            久久精品国产亚洲av日韩| 一本久久免费视频| 99久久成人国产精品免费| 狠狠色综合网站久久久久久久高清| 欧美久久天天综合香蕉伊| 伊人久久大香线蕉AV色婷婷色| 久久精品无码专区免费青青| 欧美亚洲另类久久综合| 色婷婷综合久久久久中文字幕| 国产亚洲精久久久久久无码| 国产亚洲精午夜久久久久久| 亚洲AV无一区二区三区久久 | 国产高清美女一级a毛片久久w| 欧美日韩精品久久久免费观看| 久久久久高潮毛片免费全部播放| 久久久精品一区二区三区| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区| 偷偷做久久久久网站| 久久国产精品国产自线拍免费| 久久综合视频网站| 蜜桃麻豆www久久| 亚洲午夜久久久久妓女影院 | 99久久精品国产一区二区| 久久无码一区二区三区少妇| 97r久久精品国产99国产精| 99久久国产精品免费一区二区| 亚洲精品成人网久久久久久| 国产精品免费久久久久久久久| 久久综合给合久久国产免费| 囯产极品美女高潮无套久久久| 久久丝袜精品中文字幕| 91麻精品国产91久久久久| 久久久久无码精品国产| 亚洲精品无码久久久久| 国产精品99久久久精品无码| 国产69精品久久久久观看软件| 人妻精品久久久久中文字幕| 久久无码人妻精品一区二区三区| 久久国产精品二国产精品| 99久久国产免费福利| 久久精品男人影院|