解决 ESLint中不能往原形添加属性的问题

新手上路,请多包涵

ESLint中不能往原形添加属性的问题

相关代码

Date.prototype.pattern = function(fmt) {
var o = {

'M+': this.getMonth() + 1,
'd+': this.getDate(),
'h+': this.getHours() % 12 === 0 ? 12 : this.getHours() % 12,
'H+': this.getHours(),
'm+': this.getMinutes(),
's+': this.getSeconds(),
'q+': Math.floor((this.getMonth() + 3) / 3),
'S': this.getMilliseconds()

};
var week = {

'0': '/u65e5',
'1': '/u4e00',
'2': '/u4e8c',
'3': '/u4e09',
'4': '/u56db',
'5': '/u4e94',
'6': '/u516d'

};
if (/(y+)/.test(fmt)) {

fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));

}
if (/(E+)/.test(fmt)) {

fmt = fmt.replace(RegExp.$1, ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? '/u661f/u671f' : '/u5468') : '') + week[this.getDay() + '']);

}
for (var k in o) {

if (new RegExp('(' + k + ')').test(fmt)) {
  fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)));
}

}
return fmt;
};

如何才能在原形上添加属性和方法?报错信息为Disallow Extending of Native Objects (no-extend-native);

阅读 2.7k
2 个回答
// eslint-disable-next-line no-extend-native
Date.prototype.pattern = function () {}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题