Comment retourner un objet explicitement en CoffeeScript
Cela fonctionne:
myfunc = () ->
id: 3
name: 'myname'
Mais je veux être explicite sur le retour de l'objet.
myfunc = () ->
return
id: 3
name: 'myname'
Mais j'obtiens un "Inattendue" ALINÉA "erreur". Quel est le problème avec le code ci-dessus?
- Voir github.com/jashkenas/coffee-script/issues/1263.
- vous êtes mieux de ne pas renvoyer explicitement, comme coffeescript toujours implictitly renvoie des trucs. explicitement de le faire est non seulement superflu, mais susceptibles de tromper le lecteur en lui faisant croire qu'il fait une différence et fonctions sans valeur de retour explicite serait de retour
undefined
comme en JS. - seulement redondant, mais susceptibles de tromper le lecteur en lui faisant croire qu'il fait une différence", Qui est un point critique et est applicable à de nombreux différents.
- Vous ne devriez pas supposer tout le monde est un idiot. Connu CoffeeScript utilisateurs utilisent souvent explicite retour des déclarations. Personnellement, je n'utilise que le rendement implicite avec des fonctions qui ont une seule expression de leur corps, qui est une approche populaire. Pas à l'aide d'une fonctionnalité du langage parce que vous supposez gens seront confus par quelque chose de cette base est une recette pour certains vraiment horribles code.
Vous devez vous connecter pour publier un commentaire.
vous devez mettre la valeur de retour sur la même ligne ou de l'envelopper dans
()
:Je pense que la meilleure façon est
parce qu'il correspond à la philosophie de la programmation fonctionnelle.
Les réponses précédentes sont tous corrects. Cela marche aussi: