Дичь -- это пытаться сложить строку и число, не приведя типов. Перегрузка операторов тоже древнее зло. Но чот на плюсы никто не ругается в мемах за это.
В документации есть целая страница по приоритету операторов и их перегрузке. Но не многим дано читать документацию, сейчас достаточно посмотреть ролик на ютубе.
И да, в JS нет целочисленных значений:)