** Comparez les objets JavaScript avec les classes Ruby. ** **
class Fruits
def initialize(name, color)
@name = name
@color = color
end
def info
puts "#{@name}Est#{@color}est."
end
end
apple = Fruits.new("pomme", "rouge")
apple.info
#Résultat de sortie:La pomme est rouge.
Je vais essayer de convertir la description ruby ci-dessus en description JavaScript à ma manière. (Veuillez me pardonner s'il y a une description plus simple.) Parce que les méthodes en JavaScript sont des fonctions ...
const Fruits = function(name, color){ //Argument formel
this.name = name //this.Mais@Je veux le voir comme une alternative à.
this.color = color
this.getName = function(){ return this.name } //Retour qui pourrait être omis dans ruby, une erreur se produira si omis dans JavaScript.
this.getColor = function(){ return this.color }
}
const apple = new Fruits('pomme', 'rouge') //Argument réel//Génération d'instance
console.log(`${apple.getName()}Est${apple.getColor()}est.`) //console.logがputsの代替est.
//exemple.Appel par nom d'expression de fonction.()S'il n'y a pas, une erreur se produira.
//Résultat de sortie:La pomme est rouge.
Cependant, la description suivante est possible en JavaScript.
const Fruits = function(name, color){
this.name = name
this.color = color
}
const apple = new Fruits('pomme', 'rouge')
console.log(`${apple.name}Est${apple.color}est.`)
//Résultat de sortie:La pomme est rouge.
La valeur de la variable d'instance dans le ruby défini peut être sortie en dehors de l'objet. Si vous remplacez ceci par la description de ruby, vous utiliserez un getter, et la description sera la suivante.
class Fruits
def initialize(name, color)
@name = name
@color = color
end
def name
@name
end
def color
@color
end
end
apple = Fruits.new("pomme", "rouge")
puts "#{apple.name}Est#{apple.color}est."
#Résultat de sortie:La pomme est rouge.
C'est tout.
Merci d'avoir regardé jusqu'à la fin.
Nous vous serions reconnaissants de bien vouloir signaler toute erreur ou manque de connaissances.
Recommended Posts