Chính xác thì
Tuy nhiên, nó sẽ phát ra âm thanh cảnh báo 2 - 1 - 3
.Tại sao không nhắc nhở 1 - 2 - 3
?
Một số đoạn trích từ đặc tả HTML5:http://w3c.github.io/html/semantics-scripting.html#element-attrdef-script-async
Không được chỉ định thuộc tính defer và async nếu thuộc tính src không có.
Có ba chế độ có thể được chọn bằng các thuộc tính này [async và defer]. Nếu thuộc tính async có mặt, thì tập lệnh sẽ được thực thi không đồng bộ, ngay khi có sẵn. Nếu thuộc tính async không có mặt nhưng thuộc tính defer có mặt, thì tập lệnh sẽ được thực thi khi trang đã phân tích cú pháp xong. Nếu không có thuộc tính nào có mặt, thì tập lệnh sẽ được lấy và thực thi ngay lập tức, trước khi tác nhân người dùng tiếp tục phân tích cú pháp trang.
Chi tiết xử lý chính xác cho các thuộc tính này, chủ yếu là vì lý do lịch sử, có phần không tầm thường, liên quan đến một số khía cạnh của HTML. Do đó, các yêu cầu triển khai cần phải được phân tán trong toàn bộ đặc tả. Các thuật toán bên dưới (trong phần này) mô tả cốt lõi của quá trình xử lý này, nhưng các thuật toán này tham chiếu và được tham chiếu bởi các quy tắc phân tích cú pháp cho thẻ bắt đầu và kết thúc tập lệnh trong HTML, trong nội dung nước ngoài và trong XML, các quy tắc cho phương thức document.write(), cách xử lý tập lệnh, v.v.
Nếu phần tử có thuộc tính src, phần tử có thuộc tính defer và phần tử đã được đánh dấu là "parser-inserted" và phần tử không có thuộc tính async:
Phần tử này phải được thêm vào cuối danh sách các tập lệnh sẽ thực thi khi tài liệu hoàn tất quá trình phân tích cú pháp liên quan đến Tài liệu của trình phân tích cú pháp đã tạo ra phần tử đó.