ਕੋਈ ਵੀ ਮੁੱਲ ਰੱਖ ਸਕਦੇ ਹਨ, ਪਰ ਉਹ ਸੁਰੱਖਿਆ ਵਿੱਚ ਅਲੱਗ ਹਨ। any ਕਿਸਮ ਦੀ ਜਾਂਚ ਨੂੰ ਬੰਦ ਕਰ ਦਿੰਦਾ ਹੈ; unknown ਇਸਨੂੰ ਚਾਲੂ ਰੱਖਦਾ ਹੈ ਅਤੇ ਤੁਹਾਨੂੰ ਵਰਤੋਂ ਤੋਂ ਪਹਿਲਾਂ ਸਿਕੋੜ ਦਿੰਦਾ ਹੈ।
ts
: = ;
a..;
();
: = ;
u.();
();
ਕੋਈ ਵੀ ਮੁੱਲ ਰੱਖ ਸਕਦੇ ਹਨ, ਪਰ ਉਹ ਸੁਰੱਖਿਆ ਵਿੱਚ ਅਲੱਗ ਹਨ। any ਕਿਸਮ ਦੀ ਜਾਂਚ ਨੂੰ ਬੰਦ ਕਰ ਦਿੰਦਾ ਹੈ; unknown ਇਸਨੂੰ ਚਾਲੂ ਰੱਖਦਾ ਹੈ ਅਤੇ ਤੁਹਾਨੂੰ ਵਰਤੋਂ ਤੋਂ ਪਹਿਲਾਂ ਸਿਕੋੜ ਦਿੰਦਾ ਹੈ।
: = ;
a..;
();
: = ;
u.();
();
function handle(input: unknown) {
if (typeof input === "string") {
input.toUpperCase(); // ✅ inside the guard, TS knows it's a string
}
}
unknown any ਦਾ ਕਿਸਮ-ਸੁਰੱਖਿਤ ਹਮੋਤਰ ਹੈ: ਤੁਸੀਂ ਕੁਝ ਵੀ ਇਸ ਵਿੱਚ ਤਫ਼ਸੀਲ ਕਰ ਸਕਦੇ ਹੋ, ਪਰ ਤੁਸੀਂ ਕੁਝ ਵੀ ਨਹੀਂ ਕਰ ਸਕਦੇ ਜਦ ਤੱਕ ਤੁਸੀਂ ਕਿਸਮ ਗਾਰਡ ਦੁਆਰਾ ਸਾਬਤ ਨਹੀਂ ਕਰਦੇ ਕਿ ਇਹ ਕੀ ਹੈ।
unknown — ਸੀਮਾ 'ਤੇ ਬਿਲਕੁਲ ਅਗਿਆਤ ਕਿਸਮ ਦੇ ਮੁੱਲਾਂ ਲਈ: JSON.parse ਨਤੀਜੇ, API ਜਵਾਬ, catch (e: unknown)। ਇਹ ਪ੍ਰਮਾਣਨ ਨੂੰ ਲਾਜ਼ਮੀ ਕਰਦਾ ਹੈ।any — JS ਨੂੰ ਮਾਈਗ੍ਰੇਟ ਕਰਨ ਸਮੇਂ ਜ਼ਰੂਰੀ ਛੁਟਕਾਰਾ ਜ਼ਰੀਏ ਜਾਂ ਜਦੋਂ ਤੁਸੀਂ ਸੱਚਮੁੱਚ ਕੁਝ ਵੀ ਨਹੀਂ ਲਿਖ ਸਕਦੇ। ਘੱਟ ਹੀ ਵਰਤੋ; ਇਹ ਚੁੱਪ-ਚਾਪ ਫੈਲਦਾ ਹੈ ਅਤੇ ਸੁਰੱਖਿਆ ਨੂੰ ਅਸਮਰੱਥ ਕਰਦਾ ਹੈ।any ਲਈ ਪਹੁੰਚ TypeScript ਦੇ ਉਦੇਸ਼ ਨੂੰ ਹਰਾ ਦਿੰਦਾ ਹੈ।
ਅਗ਼ਲਵਚਨ ਨਾ ਕੀਤੀਆਂ ਸੀਮਾਵਾਂ unknown ਨੂੰ ਤਰਜੀਹ ਦਿਓ — ਇਹ ਕੰਪਾਈਲਰ ਦੀਆਂ ਗ੍ਰਹਿ-ਤਸਦੀਕ ਨੂੰ ਬਰਕਰਾਰ ਰਾਖਦਾ ਹੈ ਜਦਕਿ ਤੁਸੀਂ ਆਪਹੁ ਬੇਲਾਗ ਇਨਪੁਟ ਕਬੂਲ ਕਰਦੇ ਹੋ, ਤੁਹਾਨੂੰ ਡੇਟਾ ਦੀ ਵੇਰਵਾ ਲੇਣ ਤੋਂ ਪਹਿਲਾਂ ਵੈਧ ਕਰਨ ਲਈ ਦਬਾਓ ਪਾਇਆ ਜਾਂਦਾ ਹੈ।