josdejong/mathjs

null/undefined treated as valid only for left side of comparison operators

Ouverte

#1 391 ouverte le 31 janv. 2019

 (11 commentaires) (0 réaction) (0 personne assignée)JavaScript (1 314 forks)batch import
bughelp wanted

Métriques du dépôt

Stars
 (15 065 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

Using mathjs@5.4.1

When the null value is on the right side, the correct error is thrown (actual: null):

> require('mathjs').eval('1 > null')
TypeError: Unexpected type of argument in function larger (expected: number or Array or DenseMatrix or SparseMatrix or string or boolean or Matrix or BigNumber or Complex or Fraction, actual: null, index: 1)

However, when the null value is on the left side, the error mistakenly identifies the right side as the source of the problem (actual: number):

> require('mathjs').eval('null > 1')
TypeError: Unexpected type of argument in function larger (expected: Array or DenseMatrix or SparseMatrix or Matrix, actual: number, index: 1)

Guide contributeur