[RUBY] Fonctions JavaScript

supposition
Je viens de commencer la programmation(1~Deux mois)Il résume ce que j'ai appris.
Il peut y avoir des choses qui ne fonctionnent pas ou des erreurs sur le terrain.
Si vous le remarquez, faites-le nous savoir dans les commentaires.

Définition de la fonction JavaScript

C'est l'une des configurations de base de JavaScript, et le même processus est défini ensemble afin qu'il puisse être utilisé plusieurs fois. L'image d'une méthode en Ruby est une fonction en JavaScript. Il existe deux principaux types de fonctions JavaScript. Déclarations de fonction et expressions de fonction. point important Les fonctions JavaScript ont des règles concernant les valeurs de retour. La valeur de retour doit être spécifiée en retour.

Déclaration de fonction

Ce qui est défini ci-dessous est appelé une déclaration de fonction.

fonction Nom de la fonction(argument){En traitement}

Expression de fonction

Pour définir sans définir le nom de la fonction

variable= function(argument){En traitement}

Différence entre la déclaration de fonction et l'expression de fonction

Le moment du chargement est différent. Les déclarations de fonction sont lues en premier, les expressions de fonction ne sont pas lues en premier. Par exemple ** Pour la déclaration de fonction **

good()

function good(){
console.log('good')
}

La sortie suivante est sortie sans aucune erreur.

good

** Pour les expressions de fonction **

good()

const good = function(){
console.log('good')
}

J'obtiens l'erreur suivante.

Uncaught ReferenceError: good is not defined
    at <anonymous>:1:1

À partir des résultats ci-dessus, la déclaration de fonction est affichée car la fonction définie est lue en premier. En revanche, dans le cas d'une expression de fonction, la fonction définie n'est pas lue en premier, donc une erreur se produit car la variable n'est pas définie.

Il existe trois autres types d'expressions de fonction

Les expressions de fonction peuvent être divisées en trois types. (Il s'agit également d'un croquis approximatif, il y en a donc plus si vous le divisez en petits morceaux.) ・ Fonction anonyme ・ Fonction immédiate ・ Fonction flèche

Fonction anonyme

function(argument){}

L'expression décrite dans s'appelle une fonction anonyme. Pouvez-vous écrire un code plus concis? est. J'ai comparé ce qui suit. ** Fonction anonyme **

const calc = function(num1,num2){
return num1*num2
}

const num1 = 3
const num2 = 4
console.log(calc(num1,num2))

** Déclaration de fonction **

function calc(){
return num1*num2
}

const num1 = 3
const num2 = 4
console.log(calc(num1,num2))

Est-il plus facile de déclarer une fonction dans ce cas? Je me demandais si la description était trop simple ferait une telle différence. De plus, je ne pouvais pas l'imaginer concrètement car il n'y avait pas de nom de fonction, alors j'aimerais continuer à apprendre et le mettre à jour.

Fonction immédiate

Syntaxe exécutée en même temps que la définition d'une fonction Vous pouvez éviter d'appeler la fonction.

(fonction Nom de la fonction() {
console.log(num)
})(1)

En plaçant la définition de fonction commençant par function entre (), la fonction peut être exécutée immédiatement.

Fonction flèche

Une syntaxe qui vous permet d'omettre la description de la fonction et de définir la fonction avec la description () => J'écrirai et comparerai.

//Fonction anonyme
nom de la variable const= function(){En traitement}
//Fonction flèche
nom de la variable const= () => {En traitement}

Résumé

Définition des fonctions syntaxe Fonctionnalité
Déclaration de fonction fonction Nom de la fonction(argument){En traitement} Définition de fonction standard
Expression de fonction(Fonction anonyme) function(argument){En traitement} Vous pouvez éviter les noms de fonction en double. Utilisé lorsque le code utilise de nombreuses fonctions.
Expression de fonction(Fonction immédiate) (fonction Nom de la fonction(argument){En traitement}) Il n'est pas nécessaire de définir une fonction distincte. Utilisé lors de la définition d'une fonction qui ne peut pas être détournée.
Expression de fonction(Fonction flèche) (argument) => {En traitement} Il est utilisé lorsque vous souhaitez omettre la description dans une fonction anonyme ou une fonction immédiate.

Règles de point-virgule en JavaScript

Un point-virgule (;) est ajouté pour indiquer la fin de la description. En gros, il peut être omis, mais il semble que les règles varient en fonction du site de développement. Lors de l'ajout d'un point-virgule ・ Définition des variables

const name = "Nako";

· Méthode

console.log(name);

・ Expression de fonction (fonction anonyme)

const good = function(){};

・ Expression de fonction (fonction immédiate)

(function good(){})();

・ Expression de fonction (fonction fléchée)

const good = () => {};

Sans point-virgule ・ Déclaration de fonction

function good(){}

・ Si déclaration

if(true){}els{}

Étant donné que le point-virgule dépend du site de développement, Au stade de l'apprentissage, il semble préférable de ne pas avoir une idée très fixe.

Résumé

** Il existe deux principaux types de définitions de fonctions en JavaScript ** ・ Déclaration de fonction et expression de fonction ・ La grande différence entre les deux est le moment du chargement ** La présence ou l'absence de point-virgule dépend du site de développement **

Recommended Posts

Fonctions JavaScript
javascript AOP
Bases de JavaScript
Fonction de connexion
Fonction SpringMVC-Interceptor
Implémentation de la fonction DM
Manipulation de tableau JavaScript
Les rails suivent la fonction
Fonction de commentaire implémentée
[Rails] Fonction de notification