zoukankan      html  css  js  c++  java
  • python-execjs(调用js)

    一.安装

    pip3 install PyExecJS

    电脑上要有nodejs环境

    二.使用

    一.获取js字符串

    首先将js保存至于本地文件或者你可以可以直接读到内存,必须让js以字符串的形式展示

    注意点:字符串中不要出现<script>标签的js字符串

    二.转换

    js_obj = execjs.compile(上面转换的js字符串)

    三.调用js对象中的方法

    res = js_obj("方法名",参数一,参数二.........)

    三.我使用时候的经验

    一个js_obj,比如说完成某个留下需要方法一(方法二的返回值(方法三的返回值))

    你的代码类似这样

    js_obj = execjs.compile(js_str)
    
    res_3 = js_obj("方法三")
    res_2 = js_obj("方法二",res_3)
    res_1 =js_obj("方法一",res_2)
    
    #结果你会发现res_1并不是你想要的,而逻辑是毫无问题的
    

    这可能是模块的bug导致的

    解决方法

    在js文件中定义一个三者封装后的函数

    function func_1(res_2){......}
    function func_2(res_3){......}
    function func_3(){......}
    
    //顶一个封装后方法
    function my_func(){func_1(func_2(func_3()))}
    

    然后调用我们自定义的方法即可

  • 相关阅读:
    js数组
    js字符串和控制语句
    生成器、列表解析
    js属性
    js函数
    js变量
    python抽象方法
    python 装饰器的缺点以及解决方法
    windows文件关联、打开方式列表之修改注册表攻略
    JavaScript定时器及其他
  • 原文地址:https://www.cnblogs.com/pythonywy/p/11927991.html
Copyright © 2011-2022 走看看