Core: Work around loss of precision from parseFloat

Fixes #15100
(cherry picked from commit b6e99eb43c35a3cd048c5c56d31c7e871f299a77)
Tests: Clean up isNumeric tests
(cherry picked from commit d05f4bda1cc0b1ef76dce41a53c17f75c105a377)