Windows / Mac / Linux 용 기본 Javascript 인터프리터가없는 이유는 무엇입니까?


38

Perl 및 Python과 거의 동일한 기능을 가지고 있기 때문에 일반적인 서버 측 스크립팅 작업에 Javascript를 사용하는 것이 매우 유용 할 것 같습니다. 그러나 AFAIK에는 주요 기계 아키텍처에 일반적으로 사용 가능한 Javascript 인터프리터가 없습니다. 다른 문제는 라이브러리가 부족한 것 같지만 통역사가 있으면 분명히 올 것입니다. 구글의 V8이 출발점이 될 수있다. 누구든지 우리가 이것을 곧 보게 될 것이라고 생각합니까?


1
그리고 요즘에는 거의 모든 사람이 JavaScript를 "해석"하지 않으며 거의 ​​모든 브라우저가 제 시간에 네이티브 코드로 컴파일합니다.
Joachim Sauer

2
어떤 의미에서 Windows에는 인터프리터가 있습니다 ( Jscript 참조) . 정확히 자바 스크립트는 아니지만 가깝습니다.
닌클

1
기본 데스크톱 사용을위한 JS 앱을 빌드 할 수 있기 때문에 Windows 8에는 어느 정도 내장되어있을 것입니다.
Rig

답변:


67

Node.js 는 정확히 당신이 요구하는 것입니다 ...

JavaScript 런타임 일뿐 아니라 파일 시스템 액세스 (브라우저의 JavaScript는 실제로 필요하지 않음) 및 네트워크 IO와 같은 일반적인 작업을위한 API도 제공합니다.

네트워크 응용 프로그램을 구축하기 위해 판매되었지만 훌륭합니다.하지만 실제로 원하는 것을 빌드하는 데 사용할 수있는 범용 JavaScript 런타임입니다. 또한,이 되어 V8을 기반으로.


1
허, 예. 홈페이지에서 알 수 있기 때문에 네트워크 앱에 대해서만 노드를 생각했습니다.
MebAlone

5
@MebAlone : 이것이 주된 목적입니다. 그러나 node.exe(또는 nodeUnix-y 플랫폼 에서만 ) 기본적으로 간단한 JavaScript 런타임입니다. node myJavaScript.js실행 myJavaScript.js하고 런타임 시스템에서 더 필요한 것은 무엇입니까? (그래서 디버깅과 라이브러리가 필요하지만 Node.js에는 ;-)도 포함되어 있습니다). 이것에 대한 좋은 증거는 많은 프로젝트가 JavaScript 스크립트 (물론 Node.js에서 실행)를 빌드 시스템으로 사용한다는 것입니다.
Joachim Sauer

1
NodeJS는 Google V8에서 실행됩니다. V8을 사용하여 원하는대로 할 수 있습니다. 따라서 NodeJS가 적합하지 않더라도 V8이 적합 할 수 있습니다.
Andrew T Finnell

2
@Andrew : V8은 바이너리를 제공하지 않으며 소스 만 제공합니다. 따라서 직접 빌드해야합니다 (또는 타사 바이너리를 찾으십시오). 노드에 신경 쓰지 않는다면 라이브러리를 무시하고 노드를 순수한 JavaScript 런타임으로 사용하는 것이 매우 쉽습니다. V8을 사용하여 어떻게 쉽게 할 수 있는지 알지 못합니다.
Joachim Sauer

노드에서 * 비 * 네트워크로 연결된 응용 프로그램의 한 예는 커피 스크립트 파일을 javascript로 컴파일하기 위해 명령 행에서 실행할 수있는 CoffeeScript 모듈입니다.
Spoike

76

Joachim이 언급했듯이 node.js는 정확히 당신이 요구하는 것입니다.

파이썬과 특히 Perl과 비교할 때 잘 알려져 있지 않은 것으로 보이지만 아마도 JavaScript가 널리 사용되지 않는 것으로 간주되기 때문일 수 있습니다.

여기에 이미지 설명을 입력하십시오


2
Good Parts는 Javascript가 진행하고있는 다른 모든 것들, 즉 CoffeeScript를 구성합니다. 오 CoffeeScript !
Spoike

4
책 더미에서 Kinect에 +1 모니터 높이를 약간 높이기 위해 모니터 아래에 확실한 가이드가 있습니다.
Phil

3
-1, 재미있는 사진에도 불구하고,이 답변은 본질적으로 'cuz it sucks'라고 말하는 멋진 방법이며 실제로 아무 것도 기여하지 않습니다.
GrandmasterB

3
아니, 그건 그가 전혀 말한 것이 아닙니다.
Michael B

1
Lol, The Definitive Guide-자바 스크립트 책이 아니라 웹 브라우저 DOM에 관한 책이며, 처음에는 js가 약간 있습니다.
gbjbaanb

28

Windows Script Host에는 최소한 Windows 2000부터 JScript (javascript) 엔진이 포함되어 있으므로 Javascript를 사용하여 sysadmin 작업을 수행 할 수 있습니다.

http://en.wikipedia.org/wiki/Windows_Script_Host

WScript.Shell ActiveX / COM 개체를 사용하여이를 Windows 응용 프로그램에 포함시킬 수도 있습니다.


아, 아주 멋져요!
MebAlone

3
WSH를 사용하면 여러 다른 스크립팅 언어 (예 : vb)를 사용할 수 있습니다. 내가 실수하지 않으면 더 많은 것을 설치할 수 있습니다 ( en.wikipedia.org/wiki/… ). 미디어 플레이어, 단어 등과 같은 다른 Windows 앱을 스크립팅하는데도 사용할 수 있습니다.
frozenkoi

5

node.js 외에도 GNOME, GTK 및 GLib 라이브러리에 대한 액세스를 제공하는 GNOME 지향 런타임 인 gjs 도 있습니다. GObject 내부 검사를 지원하는 모든 라이브러리와 함께 사용할 수 있다고 생각합니다.

Gjs는 GNOME3 데스크탑에서 널리 사용됩니다.


2

Java 앱 ( Rhino ) 용으로 작성된 Javascript 인터프리터가 있으며 서버 코드를 Javascript로 작성하도록 설계되었지만 Java 코드로 실행되도록 설계되었습니다.

개인적으로 node.js를 사용하는 것이 훨씬 낫습니다. 빠른 소개를 위해 (무료) NodeBeginner book을 읽는 것보다 훨씬 더 나쁜 일을 할 수 있습니다 .


완전성을 기하기 위해 : Rhino는 Javascript를 Java 코드로 실행하지 않습니다. Javascript 해석기입니다. 즉, JVM 환경에서 Javascript를 실행합니다. V8과 같은 저수준 인터프리터에 비해 속도가 빠르지 않습니다.
Cthulhu

좋은 무료 책.
Andrew_1510
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.