Maison > interface Web > js tutoriel > le corps du texte

Quels sont les types de fonctions définies en javascript

WBOY
Libérer: 2022-03-10 14:57:06
original
2558 Les gens l'ont consulté

Plusieurs types de fonctions sont définis en JavaScript : 1. Utilisez le mot-clé function pour définir des fonctions via des déclarations ou des expressions, et la syntaxe est "function functionName(parameters){executed code}" ; 2. Utilisez le constructeur de fonction Function() ; Constructeur.

Quels sont les types de fonctions définies en javascript

L'environnement d'exploitation de ce tutoriel : système Windows 10, JavaScript version 1.8.5, ordinateur Dell G3.

Quels sont les types de fonctions définies par JavaScript ?

JavaScript utilise le mot-clé function pour définir les fonctions.

La fonction peut être définie par déclaration ou elle peut être une expression.

Déclaration de fonction

Dans le tutoriel précédent, vous avez déjà compris la syntaxe de déclaration de fonction :

function functionName(parameters) {
  执行的代码
}
Copier après la connexion

La fonction ne sera pas exécutée immédiatement après avoir été déclarée, mais sera appelée lorsque nous en aurons besoin.

Constructeur de fonction

Le constructeur de fonction est utilisé pour créer un objet fonction. En JavaScript, en fait, chaque fonction est un objet fonction.

La syntaxe du constructeur de fonction :

new Function ([arg1[, arg2[, ...argN]],] functionBody)
Copier après la connexion

arg1, arg2, ... argN sont utilisés comme noms de variables comme noms de paramètres normaux des fonctions. Ces noms de variables doivent être des chaînes représentant des variables uniques conformes à la spécification d'identification de variable JavaScript ou A. chaîne séparée par des virgules représentant plusieurs variables, telles que « x », « theValue » ou « a,b ».

functionBody Une chaîne contenant l'instruction JavaScript de la définition de la fonction.

Description

1. L'objet fonction est créé lorsque le constructeur de fonction est analysé en fonction. Cependant, cela sera moins efficace que l'utilisation de déclarations de fonctions, d'expressions de fonctions, etc., car ces fonctions sont directement analysées via le code.

2. Les paramètres de chaîne transmis au constructeur de fonction seront utilisés comme noms de paramètres variables de la fonction générée par le constructeur de fonction, et l'ordre dans lequel ils apparaissent sera utilisé comme ordre des paramètres de la fonction générée.

3. Appeler le constructeur de fonction en tant que fonction (qu'il soit modifié ou non avec le mot-clé new) a le même effet.

Exemple

// Example can be run directly in your JavaScript console
// Create a function that takes two arguments and returns the sum of those arguments
var adder = new Function('a', 'b', 'return a + b');
// Call the function
adder(2, 6);
// > 8
Copier après la connexion

Les paramètres a et b sont des noms de paramètres normaux qui peuvent être utilisés dans le corps de la fonction.

La fonction générée est :

function (a,b){undefined
  return a+b;
}
Copier après la connexion

Une façon d'analyser json : var json = (new Function("return " + str))();

Le principe est le même,

La fonction générée est :

function toJson(str){undefined
   return str;
}
var str="{'a':1,'b':'abc'}";
toJson(str);
Copier après la connexion

C'est-à-dire : function(){return {'a':1,'b':'abc'}}

La différence entre le constructeur de fonction et la déclaration de fonction :

La fonction créée avec le constructeur de fonction ne créera pas de fermeture dans le contexte Les packages sont toujours créés dans la portée globale lors de l'exécution de la fonction créée, ils ne peuvent utiliser que leurs propres variables locales ou variables globales, ce qui est différent d'eval.

Recommandations associées : Tutoriel d'apprentissage Javascript

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal