方案一:首先需要了解的是:数组里边的元素可以任意类型,例如[1,"a",{b:1}]这种如果非要限制数组的入参格式,可以试试以下代码Array.prototype.pushStr=function(value){ if(typeof (value)==="number"){alert('不能传入数字')} else{this.push(value)} }注:这种方式会污染Array的原型链,比较好的方式是新建一个StringArray,并继承array,然后再往StringArray上增加pushStr方法,以上代码仅为抛砖引玉,如unshift(从数组前边插入),还需要去自行实现的方案二:利用ts去实现,声明string类型数组,但它只是提示入参类型错误,并不会限制push
方案一:
首先需要了解的是:数组里边的元素可以任意类型,例如[1,"a",{b:1}]这种
如果非要限制数组的入参格式,可以试试以下代码
注:这种方式会污染Array的原型链,比较好的方式是新建一个StringArray,并继承array,然后再往StringArray上增加pushStr方法,以上代码仅为抛砖引玉,如unshift(从数组前边插入),还需要去自行实现的
方案二:

利用ts去实现,声明string类型数组,但它只是提示入参类型错误,并不会限制push