python js 문 구 를 어떻게 실행 합 니까?

3242 단어 pythonjs 구문
1.설치

pip install PyExecJS  #     ,     :PyExecJS
2.간단하게 사용

import execjs
execjs.eval("new Date")
    : 2018-04-04T12:53:17.759Z
execjs.eval("Date.now()")
    :1522847001080  #           13 ,    python time.time()
주의해 야 할 것 은 개별 JS 문 구 는 execjs 로 돌아 온 결과 와 브 라 우 저 환경 이 돌아 온 결과 가 다 릅 니 다.다음은 브 라 우 저 환경 이 돌아 온 결과 입 니 다.
d936ca89ea110be22560a065e886aba.png
3.호출 함수

#         js      ,       。           :
  ctx = execjs.compile("""
        function add(x, y) {
                return x + y;
           }
""")
  ctx.call("add", 1, 2)  #       “add”  JS       ,        
     :3
execjs 의 용법 은 매우 간단 합 니 다.다음은 JS 를 실행 하 는 환경 과 성능 을 살 펴 보 겠 습 니 다.
4.JS 실행 환경
windows 에 서 는 다른 의존 없 이 execjs 를 실행 할 수 있 고 다른 JS 환경 도 호출 할 수 있 습 니 다.

windows      JS   
execjs.get().name
   : JScript
     windows   Node.js ,        
execjs.get().name
   : Node.js (V8)
ubuntu 에서 실행 JS 환경 의존 을 설치 해 야 합 니 다.작성 자의 환경 은 PhantomJS 입 니 다.

execjs.get().name
   : PhantomJS
원본 코드 에서 execjs 를 실행 할 수 있 는 환경 을 보 여 줍 니 다.

PyV8         = "PyV8"
Node         = "Node"
JavaScriptCore    = "JavaScriptCore"
SpiderMonkey    = "SpiderMonkey"
JScript       = "JScript"
PhantomJS      = "PhantomJS"
SlimerJS       = "SlimerJS"
Nashorn       = "Nashorn"
ubuntu 환경 에서 JS 환경 이 없 으 면 오류 가 발생 합 니 다.Could not find an available JavaScript runtime.이 를 통 해 execjs 는 ubuntu 에 JS 환경 을 설치 해 야 합 니 다.구체 적 인 JS 환경 은 구체 적 인 수요 에 따라 설치 해 야 하 며 상기 8 가 지 를 초과 해 서 는 안 된다.
5.환경 전환
os.environ 을 통 해

os.environ["EXECJS_RUNTIME"] = "Node"
execjs.get().name
execjs.eval("1 + 2")
execjs.get 으로 전환

jscript = execjs.get(execjs.runtime_names.JScript)  # runtime_names   execjs           。 
execjs.runtime_names.xxx  xxx       #3  
jscript.eval("1 + 2")
주:환경 을 전환 할 때 환경 이 존재 하지 않 으 면 오류 가 발생 하지 않 고 기본 환경 을 사용 합 니 다.또 주의해 야 할 것 은 두 가지 방식 의 차이 이다.
6.간이 성능 분석

#        ,  windows 
import  execjs
import os
import time
#   JScript
os.environ["EXECJS_RUNTIME"] = "JScript"
print execjs.get().name
time1 = time.time()
for i in range(100):
    execjs.eval("new Date")
print time.time() - time1
#        Nodejs
os.environ["EXECJS_RUNTIME"] = "Node"
print execjs.get().name
time2 = time.time()
for l in range(100):
    execjs.eval("new Date")
print time.time() - time2
#       :
JScript
4.70900011063
Node.js (V8)
27.501999855
#  ubuntu    PhantoJS ,        30+ S
이상 은 python 이 js 문 구 를 어떻게 실행 하 는 지 에 대한 상세 한 내용 입 니 다.python 이 js 문 구 를 실행 하 는 인 스 턴 스 에 관 한 자 료 는 다른 관련 글 에 주목 하 십시오!

좋은 웹페이지 즐겨찾기