I am new to Adobe Scripting - what is the difference between .jsx and .js?
Why a different extension? Simply put, that allows the Windows operating system to recognize that you intend to run the script with Adobe's interpreter. There is a somewhat similar mechanism on OS X. On Windows for example a file with the *.js extension will by default launch Microsofts script interpretter that is called JScript which again is a dialect of EcmaScript with libraries unlike ExtendScript, unlike Browsers and unlike NodeJS...
(JScript can also talk with Adobe software but trough a COM bridge just like Visual Basic, but unlike ExtendScript it can also communicate with many more Windows components like OS, and many more installed software like Excel or a CAD app for example, but being IPC its a bit different)
Actually the extension does not matter... as long as you tell which software should do what with the file. Its just more convenient to have automatic file handling.