/ / який правильний? попередження ((+ “123”)) попередження (+ “123”) (+ (“123”)) - javascript, nan

який коректний? оповіщення ((+ "123")) попередження (+ "123") сповіщення (+ ("123")) - javascript, nan

Я намагаюся перетворити рядок на float. Я знаю, що parseFloat () може зробити це, але я також знайшов синтаксис нижче, але без особливого посилання.

Який правильний синтаксис, тому що всі вони, здається, працюють. А де я можу дізнатися більше про це? Я не знаю, як Google це, тому що я не знаю, що це з ім'ям.

// syntax 1
alert((+"123"));    // 123
alert((+"x123"));   // NaN
alert((+"123x"));   // NaN
alert((+"123   ")); // 123
alert((+"   123")); // 123
alert((+"12 3"));   // NaN

// syntax 2
alert(+"123");      // 123
alert(+"x123");     // NaN
alert(+"123x");     // NaN
alert(+"123   ");   // 123
alert(+"   123");   // 123
alert(+"12 3");     // NaN

// syntax 3
alert(+("123"));    // 123
alert(+("x123"));   // NaN
alert(+("123x"));   // NaN
alert(+("123   ")); // 123
alert(+("   123")); // 123
alert(+("12 3"));   // NaN

Відповіді:

2 для відповіді № 1

Це називається неявним перетворенням. Оскільки ви використовували математичний оператор (+), він намагається перетворити рядок на числове значення, яке необхідно для математичних операцій. Те, що ви запитуєте тут, дайте мені позитивне значення наступного рядка.


3 для відповіді № 2

Вони все синтаксично коректні ... але приклади 1 і 3 мають дужки.