¿Cuál es la diferencia entre VBScript y JScript?
JScript, que es la versión de Microsoft de ECMAScript, es un conjunto de definiciones estándar para lenguajes de scripting, incluidos JScript y JavaScript.
La mayor diferencia entre VBScript y JScript es su estructura. VBScript es un subconjunto de Visual Basic. Si alguna vez ha utilizado Visual Basic o Visual Basic para Aplicaciones (VBA), le resultará muy familiar. Sin embargo, no son exactamente iguales, porque VBScript está diseñado específicamente para funcionar en el navegador y no incluye algunas características fuera del alcance de las secuencias de comandos, como el acceso a archivos y la impresión.
JScript, por otro lado, está separado de un grupo de lenguajes de programación como C, C++ y Java. Si ha utilizado C o Java antes, la estructura de JScript le resultará muy familiar. No importa si no conoce estos lenguajes, la estructura de JScript no es nada difícil: es tan conveniente como C y Java sin su complejidad.
Nota: De todos modos, JScript y Java son dos lenguajes completamente diferentes. Java es un lenguaje de desarrollo completamente maduro que se puede utilizar tanto para aplicaciones web como no web. Y JScript es un lenguaje de secuencias de comandos que se utiliza principalmente para secuencias de comandos.
JScript y VBScript tienen la misma misión: permitirle escribir sus propias páginas web. Cada idioma admite algunas características que el otro no admite, pero estas diferencias no son suficientes para delimitar automáticamente el ámbito de uso de los dos idiomas.
Lo más probable es que elijas un lenguaje de scripting basándose en una serie de otros factores, el más importante de los cuales es también el más práctico: ¿La plataforma que vas a utilizar puede admitir el lenguaje que elijas? ¿Estás escribiendo un cliente o un servidor? Si es un servidor, ¿qué navegador y software de servidor utilizarán sus usuarios?
El siguiente artículo presentará estos dos lenguajes de secuencias de comandos en detalle y brindará orientación sobre qué tipo de lenguaje de secuencias de comandos elegir en un entorno especial.
¿Cuándo elegir VBScript?
VBScript se utiliza principalmente en varias plataformas de Microsoft Corporation. Entonces, si desea escribir en VBScript, debe utilizar uno de los siguientes scripts:
Script de servidor. Si desea utilizar VBScript para escribir scripts de servidor (como en páginas web ASP), el servidor debe ser Microsoft Internet Information Server (IIS) u otro servidor.
Script de cliente. Si desea utilizar VBScript en un script de navegador, el navegador debe ser una versión de Internet Explorer. Porque es posible que otros navegadores populares no admitan VBScript.
Si está utilizando Visual InterDev, entonces ya debería estar usando IIS (u otro servidor equivalente), por lo que usar VBScript para crear secuencias de comandos en el servidor no es un problema. Si no está utilizando IIS, debe averiguar si el servidor admite VBScript.
Sin embargo, si está creando un sitio web público y no puede controlar los navegadores utilizados por otras personas, entonces la limitación de que Internet Explorer sólo puede usarse para secuencias de comandos del lado del cliente se convierte en un problema. Sin embargo, esto aún es posible si está escribiendo scripts del lado del cliente en VBScript donde el navegador lo reconoce.
Si su plataforma de destino puede admitir VBScript, considere los siguientes factores antes de decidir si utilizará VBScript para escribir scripts:
Control de errores. En VBScript, existe On Error Resume Next para explicar situaciones especiales. Si está escribiendo un script de servidor, el control de errores es muy importante porque el script se ejecuta sin supervisión.
Formato. VBScript tiene la funcionalidad de formatear fácilmente datos, datos numéricos y monetarios.
El control de eventos es conveniente en Internet Explorer, al igual que en Visual Basic. También puede crear un controlador de eventos implícito en VBScript. Solo necesita usar la estructura object__event para definir una función, como Button1_onclick. Sin embargo, en Internet Explorer, JScript no tiene esta característica (pero es compatible con otros hosts de JScript).
¿Cuándo elegir JScript?
JScript es compatible con casi todos los navegadores que permiten secuencias de comandos. Por lo tanto, si está escribiendo una aplicación ampliamente distribuida para un sitio web público, utilizar JScript para escribir scripts del lado del cliente es una elección natural. También encontrará que debido a que JScript se usa tan ampliamente (y su primo JavaScript), es un lenguaje de programación estándar y puede encontrar muchos recursos relacionados en librerías y en línea.
Si desea utilizar JScript para escribir scripts de servidor, debe comprobar si su servidor lo admite. IIS de Microsoft le permite utilizar JScript para crear secuencias de comandos de páginas web ASP, pero no todos los servidores lo admiten.
Otros factores que influyen en tu decisión incluyen:
Ejecución dinámica. Una característica muy poderosa de JScript es que le permite crear y ejecutar scripts dentro de sus scripts o realizar evaluaciones dinámicamente. En resumen, poder escribir guiones en tus guiones. Esta característica es muy útil cuando trabaja con DHTML, porque puede manipular dinámicamente el modelo de documento DHTML.
Orientada a objetos. JScript utiliza una estructura de objetos basada en prototipos que le permite definir objetos en su script. Puede agregar métodos y propiedades al prototipo de un objeto, ampliando los objetos integrados y los objetos personalizados.
Una advertencia al usar JScript: JScript distingue entre mayúsculas y minúsculas, lo que puede resultar difícil de adaptar si solo ha utilizado Visual Basic o VBScript.
Si es nuevo en JScript, también necesita saber cómo utilizar JScript para crear controladores de eventos. En Internet Explorer, JScript requiere que usted se vincule a un objeto, que a su vez está conectado a un controlador de eventos. Normalmente, esto se logra simplemente especificando sus propiedades en la barra de pestañas del objeto que identifica el evento y tiene funcionalidad de controlador. Como se muestra en el siguiente ejemplo:
En otros hosts, puede utilizar el enlace de eventos implícito, pero requiere una estructura ligeramente diferente que en VBScript. El controlador implícito acordado en JScript es:
función btnSave::onclick(){
// script aquí
}
Vale la pena señalar que en estos dos ejemplos, el atributo IDIOMA está establecido en "JavaScript". Internet Explorer reconoce tanto "JScript" como "JavaScript", mientras que muchos otros navegadores sólo reconocen "JavaScript" y no "JScript". Por lo tanto, para estar seguro, si no está seguro de que la página web se esté viendo con Internet Explorer, será mejor que utilice "JavaScript".
Para obtener más información sobre la creación de controladores de eventos en JScript, consulte la documentación de Microsoft Visual InterDev™ ubicada en MSDN Library Online.
(Para acceder a MSDN Library Online, debe tener una membresía de MSDN Online. Esta calificación es gratuita, pero simplemente debe registrarse una vez).
Utilice varios idiomas en la misma página web al mismo tiempo
p>Creo que he dejado muy claro que se pueden utilizar diferentes lenguajes de scripting en la misma página web. Recapitulemos de nuevo: ¿por qué querrías hacer esto? Aquí hay algunas razones:
La primera razón es: simplemente desea aprovechar un idioma en un programa, mientras que el resto del script todavía está escrito en otro idioma.
La segunda razón es: tal vez la codificación existente a la que te enfrentas esté escrita en un lenguaje con el que no estás familiarizado. Por ejemplo, el control de tiempo de diseño está escrito en JScript, pero el lenguaje con el que está familiarizado es VBScript. En la mayoría de los casos, puedes mezclar varios lenguajes de programación en la misma página web y funcionarán bien entre sí. Los scripts escritos en un idioma pueden llamar a programas escritos en otro idioma y pueden compartir variables globales. Pero a veces hay un pequeño problema, que ahora explicaré.