You should consider CoffeeScript as well. ;)
One note, on point 1, I don’t think you can call any language a “true” object-oriented language. Object oriented programming is a paradigm that can be implemented in any number of languages, including classic C. Some languages just have constructs that make it easier than others.
Refer the section on OOP in my article: https://mortoray.com/2017/05/10/what-is-imperative-programming/