Javascript Functions: A Comprehensive Guide