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.
InformationsquelleAutor Alice | 2011-02-05