0

这是我第一次尝试编写 javaScript。

我从网上复制了这段代码

var polynomial = function( x ){
alert(x);
    x = new BigInteger( x.toString,10);
    var y = new BigInteger( coefficients[0].toString, 10 );
    for( var i = 1; i < k; i++ ){
        y = y.add( coefficients[i].multiply( x.pow( i ) ) );
    }
    return y;
};

但是我在线上遇到错误

x = new BigInteger( x.toString,10);

同时我不知道为什么...

谁能帮我?

提前致谢

4

3 回答 3

0

您没有调用 toString 方法!

x.toString()  

浏览器有控制台,使用F12

听起来你没有包括图书馆。https://github.com/silentmatt/javascript-biginteger/blob/master/biginteger.js

于 2013-03-31T02:22:32.173 回答
0

正如其他人所指出的,BigInteger它不是 JavaScript 内置的。我在 JavaScript 中搜索了一个Big­Int­eger库并找到了这个. 要使用它,您需要从该网站下载jsbn.js并在标签上方添加这些标签,包括您的脚本:jsbn2.jsscriptscript

<script type="text/javascript" src="jsbn.js"></script>
<script type="text/javascript" src="jsbn2.js"></script>

Additionally, as others have pointed out, you are missing parentheses on the toStrings.

Together, your HTML might look like this:

<script type="text/javascript" src="jsbn.js"></script>
<script type="text/javascript" src="jsbn2.js"></script>
<script type="text/javascript">
    var polynomial = function(x) {
        x = new BigInteger( x.toString(), 10 );
        var y = new BigInteger( coefficients[0].toString(), 10 );
        for( var i = 1; i < k; i++ ){
            y = y.add( coefficients[i].multiply( x.pow( i ) ) );
        }
        return y;
    };
</script>
于 2013-03-31T02:34:02.207 回答
0

The BigInteger is not 1 of javascript types, I think that this part of code needs you to import a js framework, not sure what it is. You should check where you copy the code.

于 2013-03-31T02:34:20.427 回答