Как добавить метод типа num.tf (n) в качестве псевдонима для num.toFixed (n) - PullRequest
0 голосов
/ 07 ноября 2019

Я хотел бы добавить псевдоним tf () для методов, подобных toFixed (), для типа Number. Пример:

let num = 1.234;
console.log(num.toFixed(1));  // prints 1.2
console.log(num.tf(2));       // should print 1.23

Из небольшого количества исследований это может быть возможным, но не общепринятым. Я просто заинтересован в том, чтобы попробовать его в частном инструменте и узнать больше о Prototype и т. Д., Будьте благодарны, если вы не ответите проповедью: =)

Большое спасибо. GE.

Ответы [ 3 ]

2 голосов
/ 07 ноября 2019

Вам необходимо присвоить прототипу Number

Number.prototype.tf = Number.prototype.toFixed;
let num = 1.234;
console.log(num.toFixed(1));  // prints 1.2
console.log(num.tf(2));       // should print 1.23
1 голос
/ 07 ноября 2019

Вам необходимо создать новый прототип с именем tf в Number.

Number.prototype.tf =Number.prototype.toFixed

. Это должно сделать Barmar, опубликованный в ответе выше.

Хотя еслиВы чувствуете себя адвенто, вы можете создать новую функцию, чтобы увидеть, как это полностью работает.

Number.prototype.tf=function(num){
    return parseFloat(this.valueOf().toFixed(num))
}

Они оба делают одно и то же, но первый ответ более читабелен.

0 голосов
/ 08 ноября 2019

Я пытаюсь правильно закрыть это и пометить ответ. Спасибо за предоставленные отличные ответы. Я не буду повторять их здесь, они все очень ясно выше. Чао, Грег Э.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...