<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>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ### 數組賦值時傳的是值還是址?(答案是址) 賦值形式: ~~~ var a = 1; var b = a; b=2; console.log(a); //a=1 console.log(b); // b=2 ~~~ 傳址形式: ~~~ var a = [1,2]; var b = a; b[2] = 3; console.log(a); // a=[1,2,3] console.log(b); // b=[1,2,3] ~~~ 以下方式可以使數組傳的是值而不是址: ~~~ 方法一(推薦使用):用jQuery中的$.extend方法,該方法轉化后數組可根據第二個參數類型變化,若為{},則為對象;若為[],則為數組 var a = [1,2]; var b = $.extend(true,{},a); b[2] = 3; var c = $.extend(true,[],a); c[2] = 3; console.log(a); // a=[1,2];a依然沒改變 console.log(b); // b={0:1, 1:2, 2:3};此時b為對象 console.log(c); // c=[1,2,3];此時c為數組 ~~~ ~~~ 方法二:用數組的concat方法,該方法轉化后數組依然是數組形式 var a = [1,2]; var b = a.concat(); b[2] = 3; console.log(a); //a=[1,2];a依然沒改變 console.log(b); //b=[1,2,3];b為數組 ~~~ ~~~ 方法三:數組的復制,不改變原數組 //slice() var arr = [1,2]; var arr1 = arr.slice(); arr1[2] = 3; console.log(arr); // arr=[1,2] console.log(arr1); // arr1=[1,2,3] //from() var arr2 = Array.from(arr); arr2[2] = 3; console.log(arr); // arr=[1,2] console.log(arr2); // arr2=[1,2,3] //[...arr] var arr3 = [...arr]; arr3[2] = 3; console.log(arr); // arr=[1,2] console.log(arr3); // arr3=[1,2,3] ~~~ ## 深度克隆: ~~~ function clone(obj) { var o, i, j, k; if(typeof(obj) != "object" || obj === null) return obj; if(obj instanceof(Array)) { o = []; i = 0; j = obj.length; for(; i < j; i++) { if(typeof(obj[i]) == "object" && obj[i] != null) { o[i] = arguments.callee(obj[i]); } else { o[i] = obj[i]; } } } else { o = {}; for(i in obj) { if(typeof(obj[i]) == "object" && obj[i] != null) { o[i] = arguments.callee(obj[i]); } else { o[i] = obj[i]; } } } return o; } ~~~
                  <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>

                              哎呀哎呀视频在线观看