function MyString(string){
let str = string.toString();
let arr = [];
for(var i in str){
this[i] = arr[i] = str[i];
}
this.length = arr.length;
// this[value] = str;
this.toString = function(){
return str + '';
}
this.valueOf = function(){
return str;
}
this.chartAt = function(t){
// var t = parseInt(t);
// if(isNaN(t)){
// t = 0;
// }
var t = t*1||0;
return arr[t] || '';
}
this.concat = function(t){
console.log(t === undefined);
if(t === undefined){
t = '';
}
var result = this.toString + t;
return result;
}
this.slice = function(p, n){
var result = ''
if(n == -1){
n = arr.length;
}
for(var i = p; i < n; i++){
result += arr[i];
}
return result;
}
this.split = function(t){
var arr = [];
var index = 0;
for(var i = 0; i < str.length; i++){
if(str[i] === t){
arr[arr.length] = this.slice(index, i);
index = i+1;
}
}
arr[arr.length] = this.slice(index, i);
return arr;
}
this.reverse = function(){
var reStr = '';
for(var i = 0; i < str.length; i++){
reStr += str[str.length-1-i];
}
return reStr;
}
}
以上只是简单实现的方法, 还存在这不足的地方