javascript中为什么: //this=arr.join("");//为什么这么写不可以呢?,详细请看下面
解决时间 2021-01-26 10:22
- 提问者网友:嗝是迷路的屁
- 2021-01-26 00:17
String.prototype.reverse=function(){
var arr=this.toStringArray();
function swap(arr,x,y){
var temp;
temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
for(var x=0,y=arr.length-1;x swap(arr,x,y);
}
// return arr.join("");
//this=arr.join("");//为什么这么写不可以呢?
}
原型方法求的是字符串对象反转。
最佳答案
- 五星知识达人网友:woshuo
- 2021-01-26 00:57
因为在JavaScript中,this指的是调用函数的那个对象,即当前对象。在你贴出的代码中,this指的是String.prototype.reverse这个函数的“a,b,c,d”。以下代码供你理解参考:
String.prototype.reverse=function(){
var arr= this.split(",") //this.toStringArray();
function swap(arr,x,y){
var temp;
temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
for(var x=0,y=arr.length-1;x
swap(arr,x,y);
}
//return arr.join("");
this.string=arr.join("");//这里就这么写哦
return this.string;
}
document.write("a,b,c,d".reverse());
全部回答
- 1楼网友:北方的南先生
- 2021-01-26 01:34
arr把是javascript系统的东西,你ctrl+f搜索一下你的代码,里面可能有定义,看形式可能是一个类。
我要举报
大家都在看
推荐资讯