Microsoft MVP성태의 닷넷 이야기
COM : 3. ActiveScript의 문법 오류 검사 [링크 복사], [링크+제목 복사]
조회: 5915
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

Checking For Script Syntax Errors
; https://learn.microsoft.com/en-us/archive/blogs/ericlippert/checking-for-script-syntax-errors-this-time-with-code

가장 좋은 방법은 스크립트 전용 문법 검사기를 제공하는 3rd-party 제품을 이용하는 것이겠지만.

ParseScriptText를 이용해서도 맨 처음에 발생하는 문법 오류는 확인할 수 있습니다.
"맨 처음"이라는 제한을 없애기 위해서, 위의 댓글에 보면 문법 체크를 위한 별도의 jscript를 소개하고 있습니다. 좋아보이기는 한데... 한 가지 단점이 있습니다.
문법을 검사할 단위를 잘 쪼개서 eval에 넘겨야 하는데... 꼭 라인 하나당 적법한 문법이 오는 것이 아니니 별로 효용성은 없을 것 같은 생각이 듭니다. 단지, 그 정도의 기능이라면 전체 스크립트 문법을 검사하는 파서를 만드는 것보다는 "적법한 문법" 단위로 자르는 파서가 좀 더 쉽게 만들 수 있다는 정도겠지요.


[연관 글]






[최초 등록일: ]
[최종 수정일: 2/5/2023]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

비밀번호

댓글 작성자
 



2014-10-02 01시53분
정성태
2016-08-22 05시53분
정성태
2022-05-23 10시26분
Running JavaScript inside a .NET app with JavaScriptEngineSwitcher
;https://andrewlock.net/running-javascript-in-a-dotnet-app-with-javascriptengineswitcher/

microsoft/ClearScript
; https://github.com/Microsoft/ClearScript

A library for adding scripting to .NET applications. Supports V8 (Windows, Linux, macOS) and JScript/VBScript (Windows).

JavascriptNet/Javascript.Net
https://github.com/JavascriptNet/Javascript.Net
.Net bindings to the V8 JavaScript engine

A .NET library to parse and execute JavaScript code.
paulbartrum/jurassic
; https://github.com/paulbartrum/jurassic

Taritsyn/MsieJavaScriptEngine
; https://github.com/Taritsyn/MsieJavaScriptEngine

.NET wrapper for working with the JavaScript engines of Internet Explorer and Edge Legacy (JsRT versions of Chakra, ActiveScript version of Chakra and Classic JavaScript Engine). Project was based on the code of SassAndCoffee.JavaScript and Chakra Sample Hosts.
정성태

1  2  3  4  [5]  6  7  8 
NoWriterDateCnt.TitleFile(s)
95정성태2/23/20074987.NET : 20. .Net Zip Library/Utility updates and fixes
94정성태2/23/20074777COM : 2. VC++ - OneNote Addin 제작
93정성태2/3/20075605공통 코딩 규약 : 2. 프로퍼티와 공용 필드에 대한 선택 [1]
92정성태2/1/20074760공통 코딩 규약 : 1. HMACSHA512 / HMACSHA384 클래스 사용시 주의사항
91정성태1/27/20075042.NET : 19. HTML InnerText 구하기
90정성태1/27/20076692Vista : 3. 현재 사용자가 관리자 그룹에 속해 있는지 결정하는 코드
89정성태1/24/20074214.NET : 18. ASP.NET - AspNetHostingPermissionLevel 알아내기
88정성태1/22/20074490.NET : 17. 지역화된 폰트명 구하기
87정성태1/21/20075837.NET : 16. 클립보드 - HTML 텍스트 복사/붙여넣기
86정성태1/21/20074738.NET : 15. BinaryFormatter 에서의 진행 상태바 구현
85정성태1/20/20075681COM : 1. IE 7의 다중 탭을 이용한 네비게이션 [1]
84정성태1/19/20074579.NET : 14. 웹 서비스를 이용한 머신 간의 클립보드 공유
83정성태1/12/20074514.NET : 13. SafeHandles 를 적용한 GetProcAddress 래퍼
82정성태1/12/20074216.NET : 12. Cardspace 를 위한 ASP.NET 서버 컨트롤파일 다운로드1
81정성태1/12/20074542.NET : 11. 파일 확장자에 따른 아이콘 그려주는 HttpHandler [2]파일 다운로드1
80정성태1/10/20075264SQL : 1. SQL 2005 - 대소문자 구분없이 검색하도록 구현 [1]
79정성태1/10/20074158.NET : 10. Config 설정을 .NET Class 로 매핑
78정성태1/3/20074620.NET : 9. 텍스트 꾸미는 코드
77정성태12/13/20064815.NET : 8. C# - VARIANT 관련 마샬링 코드
76정성태12/6/20065388.NET : 7. 휴대 장치 열람하는 코드
75정성태12/6/20064493.NET : 6. 웹 서비스 메서드에 대해 완료 제한 시간 설정하는 방법
74정성태11/6/20064556.NET : 5. How to Decrypt an ASP.NET Encrypted Data
73정성태11/2/20065435.NET : 4. 콘솔 프로그램 실행시간 측정
72정성태11/1/20064702.NET : 3. System Monitoring 예제
70정성태11/1/20064253.NET : 2. System.Net.NetworkInformation.Ping 클래스 사용 예제
69정성태10/27/20064561.NET : 1. Typed DataSet 에서의 ExcludeSchema 사용
1  2  3  4  [5]  6  7  8