There are a lot of reasons why you may want to provide an executable instead of a web app:
- Web applications have a lot of the source public (HTML and JS are visible on any browser). Even with technics of obfuscation everything that's happening on the client's PC can be seen, on an executable it's harder for the average user and even advances user won't see the code you wrote, only the assembly generated. This can lead to security issues, so you need to be more carefull in a web application.
- Browsers are different, something may work in some browser and not in another, even following the standards. Some browsers support WebGL and some not, for example, but it goes to even the basic stuff (like setting the border size of a button).
- Web pages have some limitations. On the client's PC you have a sandboxed environment for security reasons, you can't access the file system unless the user allows it and even there you may encounter some problems accessing to other external devices.
- JavaScript is a non-typed language, for C++ developers it could be a hard transition. It's not a hard language, but the way you code it's really different (imagine using A LOT of function pointers in C++ and ignore some things you know about classes).
There are probably more, but I can't think more right now.
You'll learn most things creating web apps, so don't worry if you don't know the difference between GET and POST right now.
When I started making web apps I used PHP with CodeIgniter for the web services and HTML/CSS/Jquery for the client side. PHP is the language, CodeIgniter is a PHP framework that already manages a lot of things, HTML and CSS are the standards for presentation and JQuery is a framework based on JavaScript.
I've never used other frameworks but there are a lot. I've read that CodeIgniter is kind of outdated now and the "new thing" is Laravel, so maybe you can start with that for the web server. Other PHP frameworks will also work, but I've read that CodeIgniter is one of the simplest for a begginer.
Going out of PHP (it's a really old language, even though it's still being updated) the most popular option currently seems to be Ruby on Rails (Ruby is the language, Rails is a framework). I've done some simple test with it an it looks really powerfull and easy to code.
It's not clear what you wan't to do with your web app/game, but if you're C++ API does not listen and respond to HTTP requests you'll also need a web server (and you probably would, since making an app that does that is not trivial, and you won't find a web hosting that supports your custom web server). For a PHP web server you should use Apache (I always use xampp, it sets up an environment with Apache, MySQL and more). I'm not sure what web servers you need for other languages. Once you have the web services you can execute your C++ executable (http://php.net/manual/es/function.exec.php) and send to the client the json your c++ code generated.
If you want to make a browser game you can find several JS frameworks for games, look at Phaser for example.