math.js错误:未知类型“tring”

时间:2016-09-13 12:45:10

标签: javascript mathjs

我收到错误:unknown type "tring" ( throw new Error('Unknown type "' + name + '"' + ', math.js (line 751, col 16)) math.js。同样的错误来自math.min.js。我已从存储库https://github.com/josdejong/mathjs下载了math.js个包,并将其解压缩到C:\Bitnami\wampstack-5.6.20-0\apache2\htdocs\sym\crm\web\js\mathjs\

将单行包含在javascript中出现错误:

var parser = math.parser();

来自官方示例: http://mathjs.org/docs/expressions/parsing.html#parse

除了jQuery之外,没有其他库。 如果我浏览math.js文件,我找不到任何变量"tring"

这是一个symfony项目父模板。

C:\Bitnami\wampstack-5.6.20-0\apache2\htdocs\sym\crm\src\CrmBundle\Resources\views\basePlotCalc.html.twig

   {% block javascripts %}  
    <script src="{{ asset('js/jquery-2.2.3.min.js') }}"></script>
    <script src="{{ asset('js/mathjs/dist/math.js') }}"></script> 
   {% endblock %}  {# javascripts#}

2 个答案:

答案 0 :(得分:0)

现在,经过一段时间后,我发现错误的产生是因为我提供的不是要解析的字符串,而是尝试在解析括号中创建字符串。见下面的例子。好像,之前这个错误仍然存​​在于浏览器的内存中,它让我觉得它起源于var parser = math.parser();我后来尝试过(我的意思是先尝试解析(字符串表达式),得到错误并没有注意到,并且比我尝试解析器,似乎错误来自他)。

C:\Bitnami\wampstack-5.6.20-0\apache2\htdocs\sym\crm\src\CrmBundle\Resources\views\moinpl\m1i1LoadJs1d.html.twig
        {% block javascripts %}  {{   parent() }}
        <script>
        window.onload = ( function() {

var parser = math.parser(); // now gives error parser is not defined. 

var list = [10, 20, 60]; 
var node = math.parse( 'sum('+list.toString()+')' );  //gives the error error : 'Unknown type "' + name + '"' + ',  math.js (line 751, col 16))`

var tmpstr = 'sum('+list.toString()+')';
var node = math.parse( tmpstr ); // works

/* the rest of relevant code:
    var code = node.compile();       
    var result = code.eval();
    console.log('result ='+ result);        
    console.log('It works!', parser.eval('sqrt(3^2 + 4^2)')); */

math.eval('a * b', { a: 3, b: 4 }  );  //gives the error error : 'Unknown type "' + name + '"' + ',  math.js (line 751, col 16))`
scope = { a: 3, b: 4 }; math.eval(scope); //works


    }); 
    </script>
    {% endblock %}  {# javascripts#}

另一方面,现在我每次刷新浏览器时都会使用Alt+F5清理Mozilla现金,我会收到另一个错误"parser is not defined"

答案 1 :(得分:0)

我发现这样的问题,是一个错误:未知类型“字符串”,

常用方法:

编辑math.js,使用调试模式,查找未知类型的函数...字符串,并补充2次“”

math.js代码,例如...

函数u(t){t = t.replace(“”,“”); t = t.replace(“”,“”); ...

只需删除空白两次