5+ years ago when we started, C++ was the only way to develop cross platform games and apps, JavaScript is now another option.
You can choose cocos2dx or some other framework, but I would strongly recommend giving a second thought to JavaScript.
(Or TypeScript, which I find to be a better JS as it gives better auto-complete while coding and better compile time error checking. For JavaScript I will recommend using WebStorm, and for TypeScript you should use Visual Studio Code).
Languages are just tools. I have moved between C++, Java, ObjC, Swift, JavaScript, Python, PHP, C# over the years and differences arenāt much. Javascript is only becoming special because there are now JS frameworks that can do everything from server (NodeJS) to mobile apps (Cordova) to desktop apps (Electron) to games (WebGL) to WebVR and IOT etcā¦ Making it possible to not work with multiple languages for a single project. Or in case of companies, not hire people with different language skills.
If you are happy with current C++ cocos2dx why not just stay with the current cocos2dx releases? Why migrate to another similar framework? I think the Cocos2dx team is doing a good job of giving more options for developers who want to use an Editor for development, or for developers who prefer JS. They havenāt stopped development of the core C++ engine that we all love.
We are doing the extra work of moving to JS because it gives some advantages in development/maintenance time/cost. And makes it possible to target more platforms that need html/css/js apps. Where this is not the case, we are continuing with cocos2dx C++. Moving to another framework is just too much work with no benefits.
I love C++ and Cocos2dx, but I am not biased against other languages or frameworks. Some of our projects are using ThreeJS while others are going to stay Cocos2dx C++. Most of them are now Cocos2d-JS, and we are ātryingā Cocos Creator for one. It really depends on the project and its needs.