国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

重寫了JavaScript數(shù)組Array的幾個(gè)原生方法

付永剛 / 3669人閱讀

摘要:使用原型,重寫了數(shù)組的幾個(gè)簡單的方法。我在這拋磚引玉,期待大神更多對象的其他的方法擴(kuò)展

使用原型,重寫了數(shù)組的push、pop、shift、unshift幾個(gè)簡單的方法。
我在這拋磚引玉,期待大神更多對象的其他的方法擴(kuò)展

Array.prototype.push = function(){

                //this: 1,2,3
                //arguments: 4,5,6

                for (var i = 0; i < arguments.length; i++) {
                    this[this.length] = arguments[i];
                }
                return this.length;

            }

Array.prototype.pop = function(num){

                if (num) {
                    this.length = this.length-num
                }else{
                    this.length = this.length-1;
                }
                
                return this.length;
                
            }

Array.prototype.shift = function(){

    
                for (var i = 1; i < this.length; i++) {
                    this[i-1] =this[i];
                }
                this.length = this.length -1;
                return this.length;
                
            }

Array.prototype.unshift = function(){


                for (var i = this.length-arguments.length-1; i >= 0; i--) {   
                    this[arguments.length+i] = this[i];
                }

                for (var j = 0; j < arguments.length; j++) {
                    this[j] =arguments[j];
                }
                return this.length;
                
            }

            var arr = new Array();
            arr = [1,2,3];
            arr.push(4,5,6);
            alert(arr);
            arr.pop();
            alert(arr);
            arr.shift();
            alert(arr);//2,3,4,5
            arr.unshift("a","b");
            alert(arr);//a,b,2,3,4,5

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/88212.html

相關(guān)文章

  • 盤點(diǎn)JavaScript里好用的原生API ??????

    這段時(shí)間翻了一番JavaScript的api,發(fā)現(xiàn)不少好的輪子,省去造的麻煩了。 直接進(jìn)入正題 解析字符串對象 我們都知道,JavaScript對象可以序列化為JSON,JSON也可以解析成對象,但是問題是如果出現(xiàn)了一個(gè)既不是JSON也不是對象的東西,轉(zhuǎn)成哪一方都不方便,那么eval就可以派上用場 var obj = {a:1,b:2}; // 看起來像對象的字符串 eval((+ ...

    godlong_X 評論0 收藏0
  • 讀《javaScript高級程序設(shè)計(jì)-第6章》之封裝類

    摘要:創(chuàng)建構(gòu)造函數(shù)后,其原型對象默認(rèn)只會取得屬性至于其他的方法都是從繼承來的。上圖展示了構(gòu)造函數(shù)的原型對象和現(xiàn)有的兩個(gè)實(shí)例之間的關(guān)系。所有原生的引用類型都在其構(gòu)造函數(shù)的原型上定義了方法。 第6章我一共寫了3篇總結(jié),下面是相關(guān)鏈接:讀《javaScript高級程序設(shè)計(jì)-第6章》之理解對象讀《javaScript高級程序設(shè)計(jì)-第6章》之繼承 工廠模式 所謂的工廠模式就是,把創(chuàng)建具體對象的過程抽象...

    seal_de 評論0 收藏0
  • 從Vue數(shù)組響應(yīng)化所引發(fā)的思考

    摘要:因?yàn)闊o法通過借用構(gòu)造函數(shù)的方式創(chuàng)建響應(yīng)式屬性雖然屬性可以被創(chuàng)建,但不具備響應(yīng)式功能,因此在我們是沒法繼承數(shù)組的。上面整個(gè)的文章都是基于監(jiān)聽數(shù)組響應(yīng)的一個(gè)點(diǎn)想到的。 前言   首先歡迎大家關(guān)注我的Github博客,也算是對我的一點(diǎn)鼓勵(lì),畢竟寫東西沒法獲得變現(xiàn),能堅(jiān)持下去也是靠的是自己的熱情和大家的鼓勵(lì)。   從上一篇文章響應(yīng)式數(shù)據(jù)與數(shù)據(jù)依賴基本原理開始,我就萌發(fā)了想要研究Vue源碼的想法...

    hikui 評論0 收藏0
  • 「讀懂源碼系列2」我從 lodash 源碼中學(xué)到幾個(gè)知識點(diǎn)

    摘要:今天要講的,是我從的源碼實(shí)現(xiàn)文件中學(xué)到的幾個(gè)很基礎(chǔ),卻又容易被忽略的知識點(diǎn)。在函數(shù)式編程中,函數(shù)是一等公民,它可以只是根據(jù)參數(shù),做簡單的組合操作,再作為別的函數(shù)的返回值。所以,閱讀源碼,是一種很棒的重溫基礎(chǔ)知識的方式。 showImg(https://segmentfault.com/img/bVbpTSY?w=750&h=422); 前言 上一篇文章 「前端面試題系列8」數(shù)組去重(1...

    Amio 評論0 收藏0
  • JavaScript:遍歷

    摘要:中可以實(shí)現(xiàn)遍歷的數(shù)據(jù)類型主要是對象,其中包括普通對象與數(shù)組。遍歷器是一種接口,為各種不同的數(shù)據(jù)結(jié)構(gòu)提供統(tǒng)一的訪問機(jī)制。實(shí)例五遍歷器對象實(shí)例五是的遍歷過程,通過手動(dòng)調(diào)用其對象的方法實(shí)現(xiàn)信息獲取。為每個(gè)數(shù)組元素執(zhí)行函數(shù)。 前言 ??將依據(jù)自身痛點(diǎn)學(xué)習(xí),計(jì)劃對原生JavaScript寫一個(gè)系統(tǒng),本文為第一篇,感興趣的同學(xué)可以關(guān)注個(gè)人公眾號:ZeroToOneMe,或者github博客,將持續(xù)...

    ThinkSNS 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<