Разница в механике наследования: первый вариант можно унаследовать, и ему в прототип можно добавлять методы.
в первом случае, если вы захотите добавить метод, который выводит имя в консоль, то вам будет достаточно
написать
Func.prototype.printName = function(){
console.log(this.name)
}
и затем можете обращаться к методу
a.printName() // выведет в консоль Victoria
При всём при том, не зависимо от того, сколько экземпляров класса Func вы наплодите метод printName в памяти будет храниться один.
Во втором случае вы также при помощи несложных манипуляций сможете добиться похожего поведения, но там всегда будут подводные камни, например скорее всего у вас не получится создать наследника для func