The typescript compiler has an "allowJs" option. However *.js files are not part of the project so compileOnSave will not be triggered for the *.js files.
I had a look at TSIndexerFactory:: createIndexer() and found that it would only index tsconfig.json and *.ts files.
If it also indexes all *.js files or just the *.js files specified inside the files tsconfig option. compileOnSave would work for the include *.js files as well.
I think this issue was reported for VS2015 and fixed in VS2017
microsoft/TypeScript#14536 (comment)