Javascript 我可以在返回承诺时“重命名”方法“then”和“catch”吗?

Javascript 我可以在返回承诺时“重命名”方法“then”和“catch”吗?,javascript,web-services,angular,q,Javascript,Web Services,Angular,Q,我想更改名称,用西班牙语写exito success而不是。然后用error而不是catch 这是我的密码 我该如何处理这个问题 var url=; var object=null var dataServicio = new dataService(url, object, $scope, $routeParams, $controller, $timeout, $http, $q); dataServicio.ajaxPeticion(

我想更改名称,用西班牙语写exito success而不是。然后用error而不是catch

这是我的密码

我该如何处理这个问题

var url=; var object=null

            var dataServicio = new dataService(url, object, $scope, $routeParams, $controller, $timeout, $http, $q);
                dataServicio.ajaxPeticion(url, object, $scope, $routeParams, $controller, $timeout, $http, $q)
                 .then( function(response){
                     $scope.datosVista = response;
                 })
                 .catch( function(err){
                     alert(err);
                 });

            }


          function dataService(url, object, $scope, $routeParams, $controller, $timeout, $http, $q) {
                return {
                        ajaxPeticion : ajaxPeticion
                    }

                function ajaxPeticion(url, object, $scope, $routeParams, $controller, $timeout, $http, $q) {
                    if(object === null || object === undefined) {
                        var metodo = 'GET';
                }
                else {
                        var metodo = 'POST';
                }

                    var deferred = $q.defer();
                    var promise = deferred.promise;

                    $http({
                            method: metodo,
                            url: url,
                            data: object,
                            headers: {'Content-Type': 'application/x-www-form-urlencoded'}
                    })
                    .then(function(response) {
                        if(response.data.jsonMC.resultado === false || response.status != 200 || response.data.jsonMC.respuesta === null) {
                            deferred.reject(response.data.jsonMC.error);
                        }
                        else {
                            deferred.resolve(response.data.jsonMC.respuesta);
                        }
                    }, function errorCallback(response) {
                        deferred.rejected(response.data.jsonMC.error);
                    });

                    return promise;
                }

            }

你可以,但老实说,我真的看不到它的效用。您将创建一种方式,使所有开发人员或您将习惯于一种实际上不存在的方法,您的代码将永远不会被不了解此约定的外部人员理解。 同时,任何使用常规承诺的库都将使用then而不是您的方法

顺便说一句,对于简单JavaScript,这应该是您想要的,您可以使用$q服务对AngularJS执行相同的操作:

Promise.prototype.exito=Promise.prototype.then; 新承诺人解决方案,拒绝=>{ setTimeoutfunction{console.log'finished';resolve'resolved';},2500;
}.exitofunctiondata{console.logdata;} 用其他名称屏蔽方法被认为是不好的做法。
如果您仍在考虑,请注意错误在英语中也有含义,并且可能导致混淆

是的,我知道。然而,我的老板想要所有的东西都用西班牙语。太可怕了。无论如何,谢谢你。你真的应该让他知道这是语言中内置的标准接口的一部分。这就像试图改变单词if tosi@FacundoZambuto试着向他解释他的观点是毫无道理的。接下来呢?翻译所有JavaScript/AngularJS/jQlite方法?如果他不能理解这一点,你能做的最好的事情就是找到一份新工作,而不是掩盖所有的方法。当我开始在这个项目中工作时,我一直在用英语名称编写方法,比如getOriginalValue或setCustomerName。当他注意到这一点时,他要求我试着用西班牙语写方法。。。如果你能看看指令。。。太可怕了,太恶心了。我的意思是,我喜欢我的语言,但编程是用英语的。
Promise.prototype.exito = Promise.prototype.then;