mirror of
https://github.com/josdejong/mathjs.git
synced 2026-01-18 14:59:29 +00:00
Fixed #236: BigNumber downgrading to Number for a negative base in pow
This commit is contained in:
parent
27d5ce5fb3
commit
a61397cfc6
@ -81,7 +81,7 @@ module.exports = function (math) {
|
||||
}
|
||||
|
||||
if (y instanceof BigNumber) {
|
||||
if (y.isInteger() && !x.isNegative()) {
|
||||
if (y.isInteger() || !x.isNegative()) {
|
||||
return x.pow(y);
|
||||
}
|
||||
else {
|
||||
|
||||
@ -50,6 +50,9 @@ describe('pow', function() {
|
||||
it('should exponentiate bignumbers', function() {
|
||||
assert.deepEqual(pow(bignumber(2), bignumber(3)), bignumber(8));
|
||||
assert.deepEqual(pow(bignumber(100), bignumber(500)), bignumber('1e1000'));
|
||||
|
||||
assert.deepEqual(pow(bignumber(-1), bignumber(2)), bignumber('1'));
|
||||
assert.deepEqual(pow(bignumber(2), bignumber(1.5)), bignumber('2.828427124746190097603377448419396157139343750753896146353359476'));
|
||||
});
|
||||
|
||||
it('should exponentiate a negative bignumber to a non-integer power', function() {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user