Ich habe diese Funktion namens SuperPower, die ein Array von Zahlen nimmt und eine Zahl zurückgibt. Diese Zahl wird erstellt, indem jedes Element, das mit 10 multipliziert wird, mit der Potenz seiner Indexposition in dem Array verwendet wird, und dann jedes Element zusammengefügt wird.SuperPower-Funktion von ES5 bis ES6
es6
ArrayFunctions.superPower = function(array){
return array.reduce(function(sum, number, index){
return sum + (number * (Math.pow(10, index)));
});
};
Dies ist, was Dies ist die ES5 Version I Refactoring muss ich bisher versucht, aber es funktioniert nicht:
static superPower (array) {
return array.reduce(((sum, number, index) => sum + number + index) {
return (sum + (number => number ** (10, index)));
});
}
Finden Sie den vollständigen Code unten :
class ArrayFunctions {
constructor() {
}
static printSpecial (array) {
return array.join(" --- ");
}
static doubleArray (array) {
return array.map(number => number * 2);
}
static superPower (array) {
// return array.reduce(((sum, number, index) => sum + number + index); {
// return sum + (number * (Math.pow(10, index)));
// });
}
}
// Method to refactor
ArrayFunctions.superPower = function(array){
return array.reduce(function(sum, number, index){
return sum + (number * (Math.pow(10, index)));
});
};
// Here I am testing how to refactor it
// ArrayFunctions.superPower = function(array){
// return array.reduce(((sum, number, index) => sum + number + index) {
// return (sum + (number => number ** (10, index)));
// });
// };
ich werde den ganzen Kontext zu machen, können Sie ein re right @mplungjan – randseed1724
@RobG Ich habe nur einen Ausschnitt hinzugefügt, um Ihnen den ganzen Zusammenhang zu zeigen. Ich teste mein Refactoring außerhalb des Klassenkörpers, bevor es funktioniert. Nachdem es funktioniert habe, werde ich den Code delattieren und zum Klassenkörper hinzufügen. – randseed1724
Was ist die erwartete Verbesserung von ES5 zu 6 anders als nicht in älteren Browsern funktioniert – mplungjan