如何给一个字符串添加数组的方法
我们可以在面试题中经常会看见这样一个的题目,就是给某个js的内置对象中添加一个不是这个内置对象的方法的方法。比如说给一个数组添加一个去除所有元素的前后空格这样的题目,或者说给一个字符串添加一个倒叙的方法。
在碰见这种问题是我们首先应该想到的是这个方法是否存在于某个其他js内置对象中,如果存在你就可以直接在这个对象的就近原型上添加这么一个方法,比如:
String.prototype.reverse=function(){
let arr = this.split(''); //将字符串转为数组
arr.reverse(); //将数组倒叙
let str = arr.join(''); //把数组转为字符串
return str; //return出字符串
}
这样就直接给字符串添加了一个数组的方法啦。
这样我们其实可以按照一个步骤来分析它:
1、找一下这个方法是否是哪个内置对象的方法
2、如果没有就依照相关方法创造一个这样的方法
3、将这个方法添加到这个对象的prototype上