A little knowledge of Javascript, or the popular Javascript library jQuery, can go a long way in making your plugin or theme “do” things. As you may know, WordPress is written in PHP. However, for client-side code, Javascript is the typical solution. How much you do in Javascript and how much you do in PHP depends on your particular task, but at the very least you will likely use Javascript to send POST requests and parse the data received from the XMLHttpRequest object.
WordPress has an action hook called wp_ajax that allows you to access the WordPress core functions when handling HTTP post requests.
The jQuery functions jQuery.post and jQuery.ajax can be used to send the requests. The requests need to be sent to the ajaxurl, which is a javascript variable already defined on the admin side. On the front end, you need to define this variable yourself to point to the location of admin-ajax.php.
For a complete tutorial on how to use jQuery & Ajax with WordPress, see my article: How to use Ajax with your WordPress Plugin or Theme?
Another option for using Javascript in your theme or plugin is to use WordPress’s Customizer API, which is something I plan to address in a future tutorial.