Я работал над добавлением элемента динамически с помощью jQuery и обнаружил, что при использовании + +
он показывает NaN
, а следующий текст не добавляется.Почему + + на строки дает странный результат
Я могу догадаться, что каким-то образом + +
работает здесь как оператор арифметики плюс и возвращает NaN
.
Это не инкрементный оператор, так как между ними есть пробел +
.
Мой Вопрос
- Что на самом деле происходит вот так он возвращает
NaN
- Почему
+
здесь не работает как оператор конкатенации, когда он окружен строками.
$('#message').html('<span>' + + ' new message</span>');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="message"></div>
Такое же поведение можно увидеть в Node.js
> 'a' + + 'b' // aNaN
Примечание: Я знаю, что я добавил дополнительный +
здесь и удаление, что будет работать для меня.
'а' + 'Ъ', как 'а' + NaN + 'Ъ' – Omidam81
@ Omidam81, что это не правильно - просмотрите ответы –
Возможные дубликата [Добавление + "" в строку присоединяет "0"] (http://stackoverflow.com/questions/33894778/adding-to-string-appends-0) – TylerH