Time Delay In Sonar Distance Sensor or Not?

I have a working Sonar Distance Sketch and Circuits both using the NewPing() and the pulseIn() commands. The NewPing successfully hides all of the transactions between trigger and echo but in the pulseIn() command you use the following code segment.

void loop() {
// put your main code here, to run repeatedly:
digitalWrite(trigger,LOW); //Low voltage on the trigger pin to produce a clear
delay(5); //delay for 5 milliseconds.
digitalWrite(trigger,HIGH); //Create (send) the soundwave.
delay(10); //don't read too early. Wait for 10 milliseconds.
digitalWrite(trigger,LOW); //Stop sending the soundwave.
time = pulseIn(echo,HIGH); /*With the command pulseIn the Arduino board measures
the time between sending and receiving the soundwave.

I don't understand why you make the trigger LOW, HIGH, LOW and then read the echo. Can anyone help with the details of timing. The pulseIn(echo,HIGH) waits for the pulse to go High, starts counting and counts until returned pulse goes low. Is the first time through the loop not valid since the pulseIn() function has not started watching yet? Not critical to understand but I would like to. The code segment shown came from a Sketch in this forum.

Thanks for any help.