Avoid unnecessary parentheses for Units with complex value when using `format`
- Dominant language
- JavaScript
- Stars
- 15.1k
- Forks
- 1.3k
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the bug**
Some units are considered complex units, meaning they are treated differently to normal, "numeric" units.
This for example is the case for the volt-ampere reactive, considered to be `VAR` by mathjs.
**To Reproduce**
I am unsure why, but converting these units leads to unexpected results:
```
(new Unit(1, 'MW')).to('kW').format() // 1000 kW - correct
(new Unit(1, 'MVAR')).to('kVAR').format() // (1000) kVAR - weird
(new Unit(1, 'MVAR')).to('kW').format() // (1000i) kW - weird
```
I understand the want to represent these as complex numbers, but I think this is fairly out of place when dealing with units. It leads to unexpected conversions and format outputs.
Notice that using `formatUnits` avoids this, of course, since only the number part is affected by this:
```
(new Unit(1, 'MVAR')).to('kVAR').formatUnits() // kVAR
(new Unit(1, 'MVAR')).to('kW').formatUnits() // kW
```
Contributor guide
Assessment
This issue has not been assessed yet.