Utilisation des fonctions locales

Une fonction locale peut être déclarée dans le corps d'un script pour éviter les répétitions. Cependant, au moment de l'exécution, le corps d'un script étant interprété comme le corps d'une fonction (consultez Langages de script pris en charge), tous les langages ne permettent pas la déclaration de fonctions au sein des fonctions.

JScript

JScript vous permet de déclarer des fonctions locales sans aucune restriction. Par exemple :

// Script de séparation (JScript)
function shouldProcess(block){
   if(block.Text.indexOf("ABBYY")>=0){
       return true;
   return false;
}
function process(block){
   // Effectuer une action avec un bloc
}
for(var i = 0; i < this.TextBlocks.Count; i++){
   var block = this.TextBlocks(i);
   if(shouldProcess(block)){
       process(block);
   }
}

.NET

Dans les langages .NET, vous pouvez utiliser les fonctions Lambda. Par exemple :

// Script de séparation (C#)
System.Func<ITextBlock, bool> shouldProcess = (block)=>{
   if(block.Text.IndexOf("ABBYY")>=0){
       return true;
   }
   return false;
};
System.Action<ITextBlock> process = (block)=>{
   // Effectuer une action avec un bloc
};
foreach (ITextBlock block in page.TextBlocks){
   if(shouldProcess(block)){
       process(block);
   }
}

VBScript

VBScript ne vous permet pas de déclarer des fonctions locales, mais vous pouvez utiliser la méthode ExecuteGlobal pour déclarer une fonction ou une catégorie globale.

26.03.2024 13:49:50

Please leave your feedback about this article

Usage of Cookies. In order to optimize the website functionality and improve your online experience ABBYY uses cookies. You agree to the usage of cookies when you continue using this site. Further details can be found in our Privacy Notice.