You haven't got it wrong, the first example in the article behaves the same in JS, see https://jsfiddle.net/L5w2q1p7/.
So in your example the behavior is much more obvious if you sort of desugar it as
async function parent() {
print("parent before");
const p = child();
await p
print("parent after");
}