js 模拟substr

var str="adada";
console.log(str.substr(-1,2));
String.prototype.substr=function(){
     var tem="";
    if(arguments.length===0)
        return this.split("").join("");
    if(arguments[0]>=this.length)
        return tem;
    if(arguments.length===1&&arguments[0]<this.length){
        arguments[0]=(this.length+arguments[0])%this.length;
        for(var i=arguments[0];i<this.length;i+=1){
            tem+=this[i];
        }
        return tem;
    }
    if(arguments.length===2){
        if(arguments[1]<=0)
            return tem;
        else{
            arguments[0]=(arguments[0]+this.length)%this.length;
            var end=arguments[0]+arguments[1]>this.length?this.length:arguments[0]+arguments[1];
            for(var i=arguments[0];i<end;i+=1){
                tem+=this[i];
            }
            return tem;
        }
    }
}
console.log(str.substr(-1,2))

 

posted on 2018-10-27 11:09  偏灬爱  阅读(126)  评论(0编辑  收藏  举报

导航