HTML <script> async ਗੁਣ
ਵਿਆਖਿਆ ਅਤੇ ਵਰਤੋਂ
async
ਗੁਣ ਇੱਕ ਬੋਲੀਨਰ ਗੁਣ ਹੈ。
ਜੇਕਰ async
ਗੁਣ, ਸਕ੍ਰਿਪਟ ਪੰਨੇ ਦੇ ਪਰਿਭਾਸ਼ਣ ਦੌਰਾਨ ਸਮਾਂ-ਸਮਾਂ ਨਾਲ (ਉਪਲੱਬਧ ਹੋਣ 'ਤੇ) ਲੋਡ ਹੋ ਜਾਵੇਗਾ, ਅਤੇ ਉਪਲੱਬਧ ਹੋਣ 'ਤੇ ਸਿਧਾਂਤਕ ਤੌਰ 'ਤੇ ਚਲਾਇਆ ਜਾਵੇਗਾ। ਜਦੋਂ ਤਕ ਸਕ੍ਰਿਪਟ ਪੂਰੀ ਤਰ੍ਹਾਂ ਲੋਡ ਨਹੀਂ ਹੋਵੇਗਾ, ਪੰਨੇ ਦੇ ਪਰਿਭਾਸ਼ਣ ਦਾ ਅੰਦਰੂਨੀ ਪ੍ਰਬੰਧਨ ਬੰਦ ਹੋ ਜਾਵੇਗਾ, ਤਦ ਸਕ੍ਰਿਪਟ ਚਲਾਇਆ ਜਾਵੇਗਾ ਅਤੇ ਪੰਨੇ ਦੇ ਪਰਿਭਾਸ਼ਣ ਦਾ ਬਾਕੀ ਹਿੱਸਾ ਪ੍ਰਬੰਧਨ ਕੀਤਾ ਜਾਵੇਗਾ。
ਨੋਟ:async
ਇਹ ਗੁਣ ਕੇਵਲ ਬਾਹਰੀ ਸਕ੍ਰਿਪਟਾਂ ਲਈ ਲਾਗੂ ਹੁੰਦਾ ਹੈ (ਅਤੇ ਸਿਰਫ src ਗੁਣ ਮੌਜੂਦ ਹੋਣ 'ਤੇ ਵਰਤਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ)
ਨੋਟ:ਬਾਹਰੀ ਸਕ੍ਰਿਪਟ ਚਲਾਉਣ ਦੇ ਕਈ ਤਰੀਕੇ ਹਨ:
- ਜੇਕਰ async ਸੈਟ ਕੀਤਾ ਗਿਆ ਹੈ: ਸਕ੍ਰਿਪਟ ਪੰਨੇ ਦੇ ਪਰਿਭਾਸ਼ਣ ਦੌਰਾਨ ਸਮਾਂ-ਸਮਾਂ ਨਾਲ (ਉਪਲੱਬਧ ਹੋਣ 'ਤੇ) ਲੋਡ ਹੋ ਜਾਵੇਗਾ, ਅਤੇ ਉਪਲੱਬਧ ਹੋਣ 'ਤੇ ਸਿਧਾਂਤਕ ਤੌਰ 'ਤੇ ਚਲਾਇਆ ਜਾਵੇਗਾ (ਪਰਿਭਾਸ਼ਣ ਪੂਰਾ ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ)
- ਜੇਕਰ defer ਸੈਟ ਕੀਤਾ ਗਿਆ ਹੈ (ਅਤੇ async ਨਹੀਂ ਸੈਟ ਕੀਤਾ ਗਿਆ ਹੈ): ਸਕ੍ਰਿਪਟ ਪੰਨੇ ਦੇ ਪਰਿਭਾਸ਼ਣ ਦੌਰਾਨ ਸਮਾਂ-ਸਮਾਂ ਨਾਲ (ਉਪਲੱਬਧ ਹੋਣ 'ਤੇ) ਲੋਡ ਹੋ ਜਾਵੇਗਾ, ਪੰਨੇ ਦੇ ਪਰਿਭਾਸ਼ਣ ਦੇ ਬਾਅਦ ਚਲਾਇਆ ਜਾਵੇਗਾ
- ਜੇਕਰ ਨਾ ਹੀ async ਅਤੇ ਨਾ ਹੀ defer ਹੈ: ਸਕ੍ਰਿਪਟ ਸਿਧਾਂਤਕ ਤੌਰ 'ਤੇ ਲੋਡ ਹੋ ਜਾਵੇਗਾ ਅਤੇ ਚਲਾਇਆ ਜਾਵੇਗਾ, ਪੰਨੇ ਦੇ ਪਰਿਭਾਸ਼ਣ ਨੂੰ ਬਲਕ ਕਰੇਗਾ, ਜਦੋਂ ਤਕ ਸਕ੍ਰਿਪਟ ਚਲਾਇਆ ਨਹੀਂ ਜਾਵੇਗਾ
ਉਦਾਹਰਣ
ਹਵਾਲੇ ਕੀਤੇ ਸਕ੍ਰਿਪਟ ਪੰਨੇ ਦੇ ਪਰਿਭਾਸ਼ਣ ਦੌਰਾਨ ਸਮਾਂ-ਸਮਾਂ ਨਾਲ (ਉਪਲੱਬਧ ਹੋਣ 'ਤੇ) ਸ਼ੁਰੂ ਕਰਨ ਵਾਲੇ ਹਨ:
<script src="demo_async.js" async></script>
ਗਣਨਾ
<script async>
ਅਸਿਧਾਂਤਕ ਸਕ੍ਰਿਪਟ ਚਲਾਉਣਾ
ਬਰਾਉਜ਼ਰ ਸਕ੍ਰਿਪਟ ਇਲੈਮੈਂਟ ਮਿਲਣ 'ਤੇ ਮੂਲ ਵਿਵਹਾਰ ਹੈ ਕਿ ਸਕ੍ਰਿਪਟ ਲੋਡ ਅਤੇ ਚਲਾਉਣ ਦੇ ਨਾਲ-ਨਾਲ ਪੰਨੇ ਦੇ ਪ੍ਰਬੰਧਨ ਨੂੰ ਰੋਕਣਾ। ਵੱਖ-ਵੱਖ ਸਕ੍ਰਿਪਟ ਇਲੈਮੈਂਟ ਕਿਸੇ-ਕਿਸੇ ਦੇ ਨਾਲ ਕਿਸੇ-ਕਿਸੇ ਦੇ ਮੌਜੂਦਗੀ ਵਿੱਚ (ਉਸ ਦੇ ਨਿਰਧਾਰਿਤ ਕਿਰਦ ਅਨੁਸਾਰ) ਸਿਧਾਂਤਕ (ਸਕ੍ਰਿਪਟ ਲੋਡ ਅਤੇ ਚਲਾਉਣ ਦੇ ਦੌਰਾਨ ਹੋਰ ਕੁਝ ਨੂੰ ਦੇਖਣ ਦੀ ਜ਼ਰੂਰਤ ਨਹੀਂ) ਚਲਾਉਣ ਵਿੱਚ ਹਨ।
ਜਿਵੇਂ ਕਿ ਸਕ੍ਰਿਪਟ ਦੇ ਪ੍ਰਬੰਧਨ ਦੇ ਮੂਲ ਤੌਰ 'ਤੇ, ਸਿਧਾਂਤਕ ਕਿਰਦ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨਾ ਆਪਣੀ ਮਹੱਤਵਪੂਰਨ ਅਹਿਮੀਅਤ ਰੱਖਦਾ ਹੈ। ਪਰ ਕੁਝ ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਪ੍ਰਬੰਧਨ ਕਰਨ ਦੀ ਜ਼ਰੂਰਤ ਨਹੀਂ ਹੁੰਦੀ, ਅਜਿਹੇ ਸਕ੍ਰਿਪਟਾਂ ਲਈ async
ਗੁਣ ਨਾਲ ਉਸ ਦੀ ਸ਼ਕਤੀ ਵਧਾਉਣ ਦਾ ਇੱਕ ਮਿਸਾਲ ਹੈ ਕਿ ਟ੍ਰੈਕਿੰਗ ਸਕ੍ਰਿਪਟ (tracking script)।ਇਹ ਸਕ੍ਰਿਪਟ ਯੂਜ਼ਰ ਦੀ ਵੈੱਬਸਾਈਟ ਦੀ ਪ੍ਰਵਾਸੀ ਰਿਕਾਰਡ ਰਿਪੋਰਟ ਕਰ ਸਕਦੇ ਹਨ ਤਾਕਿ ਅਡਵਰਟਾਈਜ਼ਿੰਗ ਕੰਪਨੀਆਂ ਯੂਜ਼ਰ ਦੀਆਂ ਆਦਤਾਂ ਅਨੁਸਾਰ ਜਾਂਦਾ ਅਡਵਰਟਾਈਜ਼ਿੰਗ ਸੁਚਾਰੂ ਕਰ ਸਕਣ, ਜਾਂ ਵੈੱਬਸਾਈਟ ਦੇ ਦ੍ਰਿਸ਼ਟਾਂਤ ਦੀਆਂ ਅੰਕੜਾਂ ਨੂੰ ਸੂਚੀਬੱਧ ਕਰ ਸਕਣ ਅਤੇ ਇਸ ਤਰ੍ਹਾਂ ਹੀ।ਇਹ ਸਕ੍ਰਿਪਟ ਆਪਣੇ ਆਪ ਵਿੱਚ ਕੰਮ ਕਰਦੇ ਹਨ, ਆਮ ਤੌਰ 'ਤੇ HTML ਦਾਖਲ ਵਿੱਚ ਅਸਾਮੀ ਨਹੀਂ ਹਨ।ਇਸ ਲਈ ਪੇਜ ਦਾ ਪਰਦਾਫਾਸ਼ ਕਰਨ ਤੋਂ ਬਾਅਦ ਉਨ੍ਹਾਂ ਨੂੰ ਲੋਡ ਕਰਨ ਅਤੇ ਉਨ੍ਹਾਂ ਦੇ ਸਰਵਰ ਨੂੰ ਰਿਪੋਰਟ ਭੇਜਣ ਦੇ ਲਈ ਪੇਜ ਦਾ ਪਰਦਾਫਾਸ਼ ਕਰਨ ਵਿੱਚ ਕੋਈ ਮਹੱਤਵਪੂਰਨ ਕੰਮ ਨਹੀਂ ਹੁੰਦਾ ਹੈ।
ਵਰਤੇ ਗਏ async
ਗੁਣ ਦੇ ਬਾਅਦ, ਬਰਾਉਜ਼ਰ ਹੋਰ ਐਲੀਮੈਂਟਾਂ (ਜਿਵੇਂ ਹੋਰ script ਐਲੀਮੈਂਟ) ਦੇ ਪਰਿਭਾਸ਼ਣ ਨੂੰ ਅੱਗੇ ਵਧਦੇ ਹੋਏ ਅਸਿਨਕਰੋਨਸ ਤੌਰ 'ਤੇ ਸਕ੍ਰਿਪਟ ਲੋਡ ਕਰੇਗਾ ਅਤੇ ਚਲਾਵੇਗਾ।ਅਗਰ ਇਹ ਸਹੀ ਤਰੀਕੇ ਨਾਲ ਵਰਤਿਆ ਜਾਵੇ, ਤਾਂ ਇਹ ਪੂਰੀ ਲੋਡਿੰਗ ਸ਼ਕਤੀ ਵਧਾ ਸਕਦਾ ਹੈ。
ਨੋਟ:ਵਰਤੋਂ async
ਗੁਣ ਦਾ ਇੱਕ ਮਹੱਤਵਪੂਰਨ ਨਤੀਜਾ ਇਹ ਹੈ ਕਿ ਪੇਜ ਵਿੱਚ ਸਕ੍ਰਿਪਟ ਮੌਜੂਦਾ ਨਹੀਂ ਮੁਤਾਬਕ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੇ ਜਾਣਗੇ।ਇਸ ਲਈ ਜੇਕਰ ਸਕ੍ਰਿਪਟ ਹੋਰ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੇ ਗਏ ਫੰਕਸ਼ਨ ਜਾਂ ਮੁੱਲ ਵਰਤਦੇ ਹਨ, ਤਾਂ ਉਹ ਨਹੀਂ ਵਰਤੇ ਜਾਣਗੇ async
ਗੁਣ
ਬਰਾਉਜ਼ਰ ਸਮਰਥਨ
ਸਾਰੇ ਅੰਕ ਇਸ ਲਈ ਦਿੱਤੇ ਗਏ ਹਨ ਕਿ ਕਿਸ ਬਰਾਉਜ਼ਰ ਵਿੱਚ ਇਸ ਗੁਣ ਦਾ ਪੂਰਣ ਸਮਰਥਨ ਹੈ。
ਚਰਮੀ | ਐਂਜਲ | ਫਾਇਰਫਾਕਸ | ਸੈਫਾਰੀ | ਓਪਰਾ |
---|---|---|---|---|
ਚਰਮੀ | ਐਂਜਲ | ਫਾਇਰਫਾਕਸ | ਸੈਫਾਰੀ | ਓਪਰਾ |
8.0 | 10.0 | 3.6 | 5.1 | 15.0 |