You don't need Javascript for asynchronous tasks because you've got Java! To be more specific asynchronous (done at the same time) tasks are done in Java using Threads.
In Java ME you have the following options:
1. run() method and
Thread Object:
java.lang.Runnable -- the run() method a class needs to implement to run its run() asynchronously.
java.lang.Thread -- the object that you need to "start()" the Runnable task in its own thread of execution(asynchronous task).
2. Timer, TimerTask
java.util.TimerTask -- this is like Runnable but for tasks that can be scheduled with a time setting.
java.util.Timer -- this is like Thread but with time scheduling instead of starting things right away.
Also if you learn about methods Object.wait(), Object.notify(), Thread.interrupt(), Timer.cancel(), and the synchronized block features of Java then you can extend the lifetime of your threads, and have them wait in the background not wasting resources until something happens.