Данная ссылка берёт скрипт с того же сайта (протокол и имя сайта - те же), начиная от корня (слеш в начале адреса). Далее - каталог/директория "js", в которой файл "my.js".
Если файл "my.js" отдаётся как есть, а не обрабатывается как CGI-скрипт или ещё как-то - то вопр.знак и то что далее игнорируется сервером. Но при работе клиент (собственно, сам скрипт) может посмотреть, какие параметры ему передали.
Параметры передаются в виде "имя=значение". Если их несколько - разделяются амперсендом.
Это версионность. Если происходят какие-то изменения в js или css, то им потом меняют эту версионность, чтобы браузеры подтягивали актуальные стили/скрипты, а не из закешированных.
Иван Анатоличь, технически - нет. Можете просто указывать без всяких ?v=
Но, если Вы изменили в этом скрипте код и хотите, чтобы изменения все вступили в силу для всех, то нужно желательно указать версию. Можно это делать по-разному: ?v1 или ?v=1, или т.п., как Вам будет удобнее. Так просто легче отслеживать. Изменили что-то, потом желательно изменить, например, на ?v=2, тогда у всех будет отрабатывать актуальный код и js-файла, если, конечно, в Вашей системе не используется ещё какое-то кеширование.