Нужна функция базового имени в Javascript

Мне нужна короткая функция basename (однострочная?) для Javascript:

basename("/a/folder/file.a.ext") -> "file.a"
basename("/a/folder/file.ext") -> "file"
basename("/a/folder/file") -> "file"

Она должна удалить путь и любое расширение.

Обновление: Для точки в начале было бы неплохо рассматривать как "особые" файлы

basename("/a/folder/.file.a.ext") -> ".file.a"
basename("/a/folder/.file.ext") -> ".file"
basename("/a/folder/.file") -> ".file" # empty is Ok
basename("/a/folder/.fil") -> ".fil"  # empty is Ok
basename("/a/folder/.file..a..") -> # does'nt matter
46
задан PeterMmm 29 September 2010 в 13:16
поделиться