Soy nuevo en el analizador de Rhino. ¿Puedo usar este analizador de rinocerontes en código javascript para extraer el Árbol de sintaxis abstracta del código javascript en cualquier archivo html? Si es así, ¿por qué debo comenzar esto? Esto es para Analizar AST del código para calcular la relación entre palabras clave y palabras usadas en JavaScript, para identificar esquemas de descifrado comunes y para calcular las ocurrencias de ciertas clases de llamadas a funciones como fromCharCode() , eval() y algunas funciones de cadena que se usan comúnmente para el descifrado y la ejecución de exploits de unidad por descarga.Usando el analizador de Rhino en el código de javascript para analizar las cadenas en javascript
Respuesta
Hasta donde yo sé, no se puede acceder al AST desde JavaScript en Rhino. Sin embargo, miraría el analizador Esprima. Es un analizador de JavaScript completo escrito en JavaScript y tiene una API simple para hacer análisis de código.
Aquí es un ejemplo sencillo que calcula la palabra clave para identificadora ratio:
var tokens = esprima.parse(script, { tokens: true }).tokens;
var identifierCount = 0;
var keywordCount = 0;
tokens.forEach(function (token) {
if (token.type === 'Keyword') {
keywordCount++;
}
else if (token.type === 'Identifier') {
identifierCount++;
}
});
var ratio = keywordCount/identifierCount;
Este analizador fue muy bueno. El código anterior funcionó para mí. Gracias. ¿Puede proporcionar un tutorial para este analizador para que pueda extraer el AST del código javascript de una página web en javscript – user1335906
? No he hecho mucho con él todavía, así que no tengo ninguna experiencia con ese tipo de cosas. La función 'parse' devuelve el AST, por lo que no debería ser demasiado difícil. La documentación está en http://esprima.org/doc/index.html y el blog del autor (http://ariya.ofilabs.com/) tiene algunos ejemplos de cómo usarlo. Espero que esos ayuden. –
- 1. Analizador de JavaScript en JavaScript
- 2. código JavaScript Analizar en C#
- 3. Rhino, agregando código desde varios archivos javascript
- 4. Analizando Javascript usando el código Ruby
- 5. Analizador de Javascript para una expresión simple
- 6. Analizador de reducción en Javascript
- 7. Analizador de JavaScript en Python
- 8. configure rhino en javascript Eclipse
- 9. cadena Analizar en javascript
- 10. Cómo analizar html que incluye el código de JavaScript
- 11. Usar JavaScript para analizar el tiempo
- 12. ¿Hay algún analizador JSDoc de código abierto escrito en Javascript?
- 13. Cómo analizar XML utilizando el analizador SAX
- 14. JavaScript no recursivo Analizador JSON
- 15. ¿Cómo eliminar el código emoji usando javascript?
- 16. JavaScript, regex analizar contenido de cadenas entre llaves
- 17. código de JavaScript para el objeto matemático
- 18. Analizador de Java escrito en JavaScript
- 19. ¿Estoy escapando las cadenas incorrectamente en JavaScript?
- 20. Biblioteca para escribir el código de JavaScript
- 21. interpolación de cadenas en JavaScript
- 22. descomprime cadenas en javascript
- 23. Organizando el código javascript
- 24. objeto Analizar JSON en JavaScript
- 25. Código analizador de código abierto para el marcado Mediawiki
- 26. Interpretación de JavaScript en Java con Rhino: pausar/reanudar scripts
- 27. Escapar cadenas en JavaScript
- 28. Complementos Maven para analizar la calidad del código JavaScript
- 29. ¿Cómo se puede ejecutar Javascript usando Rhino para Java en un sandbox?
- 30. Escapar literals de cadenas de JavaScript en las vistas
FYI: Una API AST se añadió en [Rhino 1.7R3] (https://developer.mozilla.org/en-US/ docs/New_in_Rhino_1.7R3) – McDowell