VBScript et JScript (Cactus Studio · CPCW) dans la page ASP
ASP a la capacité de gérer différents programmes de script linguistique. L'environnement de développement ASP fournit deux moteurs de scripts, à savoir VBScript et JScript. Cependant, les développeurs ne sont pas limités à seulement deux langues, tant qu'ils peuvent fournir un moteur de script ActiveX approprié, ils peuvent utiliser n'importe quelle langue de script.
Le choix du langage de script est souvent basé sur de nombreuses raisons différentes: il peut être le langage le plus familier des développeurs, il peut fournir le support le plus caractéristique pour un projet donné, ou il peut être le plus efficace. Différents environnements et exigences nous font prêter attention à différents facteurs lors du choix d'une langue de script. Langue de script.
Que dois-je faire pour le moment? Dois-je réécrire ces scripts avec la langue de script actuelle? En d'autres termes, est-il possible d'appeler la fonction intégrée -in d'un autre langage de script dans un langage de script? Cet article explique comment permettre au script VBScript et au script JScript d'interagir dans les applications ASP pour maximiser les caractéristiques de la langue à deux scripts.
1. Les fonctions construites de VBScript et JScript
Dans VBScript et JScript, un grand nombre de fonctions de fonctions construites sont identiques ou similaires. Cependant, la fonction construite -in dans un langage de script n'est pas toujours une fonction correspondante dans une autre langue de script. Par exemple, VBScript fournit de nombreuses fonctions pour le fonctionnement des données de chaîne et de formatage, qui n'existent pas dans JScript. Ces fonctions incluent Strreverse (), Filter () et FormatCurrency (). D'un autre côté, les fonctions fournies par JScript pour gérer le tableau, le codage des chaînes, etc. ne sont pas définies dans VBScript, telles que join (), reverse (), POW (), Bit Operations, Escape () et Unescape () attendez.
Alors, que se passe-t-il si vous avez besoin d'une fonction VBScript dans le programme JScript?
2. Appels mutuels des scripts hétérogènes
Si vous devez appeler une fonction intégrée dans un script VBScript dans le script JScript, vous devez écrire une fonction de définition de l'utilisateur VBScript (où appeler la fonction VBScript Built -in ici), puis appelez cette fonction de définition de l'utilisateur comme le public Fonction JScript dans le script JScript.
Par exemple, si la fonction VBScript Built -in à appeler est FormatCurrency (), vous pouvez déclarer la fonction personnalisée suivante:
<Script Language = VBScript Runat = Server>
Fonction FormatValue (valeur)
FormatValue = format-monnaie (valeur)
fonction finale
</cript>
Ensuite, vous pouvez appeler FormatValue () comme une fonction JScript ordinaire dans le code JScript. Des méthodes similaires peuvent également être utilisées pour appeler la fonction JScript du code VBScript.
Appliquez la même règle, nous pouvons appeler n'importe quelle fonction de définition de l'utilisateur dans n'importe quel script. Cependant, lorsque vous appelez un processus VBScript (sous) sans paramètres (sous) du script JScript. .
Troisièmement, le partage de données
Dans certaines circonstances, le mélange de l'utilisation des fonctions VBScript et JScript est très utile, mais le partage de données entre différents scripts de langue peut également être utile. La méthode d'implémentation de ce partage est très simple: quelle que soit la langue utilisée, tant que les variables de l'instruction de niveau de page peuvent être référencées arbitrairement.
La méthode de l'objet est également similaire et vous pouvez utiliser la lecture du langage appropriée, modifier la méthode de l'attribut ou appeler l'objet. Bien sûr, les attributs et les méthodes de l'objet donné sont définis par le langage de création d'une instance de l'objet. Tout comme les appels de processus du processus VBScript ci-dessus, lorsqu'une méthode d'appel d'un objet VBScript avec un paramètre sans paramètres est appelée à partir de JScript, la méthode d'appel suit également les règles d'appel de JScript et vice versa.
Quatrièmement, gestion de la table
Le problème de partage du tableau est légèrement plus compliqué. Bien que le tableau puisse être partagé entre différents scripts linguistiques comme d'autres variables, nous devons prêter attention aux problèmes compatibles.
Le tableau VBScript peut être référencé avec un symbole de VBScript sous JScript, c'est-à-dire l'élément de tableau des éléments du tableau au lieu du symbole de référence des éléments de tableau de JScript [2] De plus, vous pouvez utiliser un objet JScript spécial - l'objet VBArray pour convertir le tableau VBScript en tableau JScript. Le code suivant crée le tableau jscript myjsarray à partir du tableau VBScript myvbarray:
Var Test = new vBarray (myvbarray)
var myjsarray
myjsArray = temp.toArray ()
Le code ci-dessus crée d'abord un objet VBArray temporaire, puis utilise sa méthode ToArray () pour se convertir en tableau JScript. Depuis lors, je peux utiliser MyJsArray comme un tableau JScript ordinaire, comme MyJsArray [1]. Cependant, il convient de noter que la méthode ToArray () convertira un VBaray multidimensionnel en un tableau JScript de dimension.
Le tableau JScript est plus compliqué de VBScript. Bien que nous puissions accéder directement aux méthodes et attributs du tableau JScript dans VBScript, il n'y a pas de méthode pour accéder directement à l'élément unique du tableau JScript. En d'autres termes, nous pouvons lire l'attribut le long du tableau JScript dans le script VBScript, comme indiqué ci-dessous:
x = myjsarray.length
Mais il est impossible de lire directement l'élément unique du tableau.
x = myjsarray (3)
Une méthode réalisable pour résoudre ce problème consiste à effectuer un processus de conversion.
<%
Température
dim myvbarray
temp = myjsarray.join (,)
MyVBarRay = Split (temp ,,)
%>
La méthode jscript join () convertit ici l'élément MyJsArray en tableau en une chaîne avec une virgule en tant que division, et la fonction VBScript Split () convertit la chaîne en tableau VBScript. Notez que nous voici la méthode de jointure d'appel JScript dans l'environnement VBScript. Selon cet exemple, nous pouvons simuler la méthode ToArray () de l'objet vBarray de JScript par fonction VBScript personnalisée pour implémenter la conversion du tableau JScript vers le tableau VBScript.
Cinq, résumé
La sélection flexible de différentes langues de script dans le même projet ASP présente de nombreux avantages. pour les bibliothèques de script VBScript ou universelles qui peuvent être utilisées dans l'environnement JScript.