why use a ‘async’ JS programming in Puppeteer?

These days, I studied about sync, async in Javascript.
And then now, I’m gonna make a crawling program using Puppeteer.

There are many example code in crawling as Puppeteer.
But, I have one question.
Why do they use a ‘async’ in basic example script?

Can’t I use ‘sync’ programming in crawling as Puppeteer?
Is there a issue that I don’t know?

It doesn’t seem useful if I don’t use multi-threads(multi crawling).

I want to know about that