ਇੱਕ ਪਾਈਥਨ ਡੇਟਾ ਫਿਲਟਰ ਦੇ ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਪਰਿਵਰਤਨ ਨੂੰ ਸਮਝਣਾ
ਪਾਇਥਨ ਕੋਡ ਨੂੰ JavaScript ਵਿੱਚ ਅਨੁਵਾਦ ਕਰਨਾ ਅਕਸਰ ਜ਼ਰੂਰੀ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਵੱਖ-ਵੱਖ ਤਕਨੀਕੀ ਸਟੈਕਾਂ ਜਾਂ ਪਲੇਟਫਾਰਮਾਂ ਵਿੱਚ ਕੰਮ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਪਾਈਥਨ, ਖਾਸ ਤੌਰ 'ਤੇ ਪਾਂਡਾ ਵਰਗੀਆਂ ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੇ ਨਾਲ, ਡੇਟਾ ਹੇਰਾਫੇਰੀ ਲਈ ਸ਼ਕਤੀਸ਼ਾਲੀ ਟੂਲ ਪੇਸ਼ ਕਰਦਾ ਹੈ, ਜੋ ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਸਿੱਧੇ ਉਪਲਬਧ ਨਹੀਂ ਹੋ ਸਕਦੇ ਹਨ। ਇਹ ਇੱਕ ਚੁਣੌਤੀ ਬਣ ਜਾਂਦੀ ਹੈ ਜਦੋਂ ਤੁਹਾਨੂੰ Python ਦੇ ਉੱਚ-ਪੱਧਰੀ ਓਪਰੇਸ਼ਨਾਂ ਨੂੰ JavaScript ਦੀਆਂ ਹੋਰ ਮੈਨੂਅਲ ਪ੍ਰਕਿਰਿਆਵਾਂ ਵਿੱਚ ਬਦਲਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।
ਇਸ ਲੇਖ ਵਿੱਚ, ਅਸੀਂ ਇੱਕ ਖਾਸ ਪਾਈਥਨ ਫੰਕਸ਼ਨ ਨੂੰ ਕਿਵੇਂ ਬਦਲਣਾ ਹੈ ਜੋ ਪਾਂਡਾਸ ਡੇਟਾਫ੍ਰੇਮ ਨੂੰ ਇੱਕ JavaScript ਦੇ ਬਰਾਬਰ ਵਿੱਚ ਫਿਲਟਰ ਅਤੇ ਪ੍ਰੋਸੈਸ ਕਰਨ ਬਾਰੇ ਦੱਸਾਂਗੇ। ਫੰਕਸ਼ਨ ਕੁਝ ਮਾਪਦੰਡਾਂ, ਖਾਸ ਤੌਰ 'ਤੇ ਮਹੀਨਿਆਂ, ਸਾਈਟਾਂ, ਅਤੇ ਚੱਲਣ ਦੇ ਘੰਟਿਆਂ ਦੇ ਆਧਾਰ 'ਤੇ ਡੇਟਾ ਨੂੰ ਫਿਲਟਰ ਕਰਨ 'ਤੇ ਕੇਂਦ੍ਰਤ ਕਰਦਾ ਹੈ, ਅਤੇ ਫਿਰ 'ਫੈਕਟਰ' ਨਾਮਕ ਮੁੱਖ ਮੁੱਲ ਲੱਭਣਾ। JavaScript ਵਿੱਚ ਇਸਨੂੰ ਕੁਸ਼ਲਤਾ ਨਾਲ ਦੁਬਾਰਾ ਲਿਖਣ ਲਈ ਇਹ ਸਮਝਣ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ ਕਿ ਹਰੇਕ ਭਾਸ਼ਾ ਡੇਟਾ ਫਿਲਟਰਿੰਗ ਅਤੇ ਦੁਹਰਾਓ ਨੂੰ ਕਿਵੇਂ ਸੰਭਾਲਦੀ ਹੈ।
ਪਾਈਥਨ ਫੰਕਸ਼ਨ ਪਾਂਡਾਸ ਦੇ ਅਨੁਭਵੀ ਡੇਟਾਫ੍ਰੇਮ ਹੇਰਾਫੇਰੀ ਦੀ ਵਰਤੋਂ ਕਰਦਾ ਹੈ, ਸ਼ਰਤਾਂ ਅਤੇ ਕਾਲਮ ਓਪਰੇਸ਼ਨਾਂ ਦੇ ਨਾਲ ਆਸਾਨ ਫਿਲਟਰਿੰਗ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ। ਦੂਜੇ ਪਾਸੇ, JavaScript, ਆਮ ਤੌਰ 'ਤੇ ਐਰੇ ਅਤੇ ਮੈਨੂਅਲ ਦੁਹਰਾਓ 'ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ, ਉਸੇ ਨਤੀਜੇ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਹੋਰ ਕਦਮਾਂ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਇਹ ਲੇਖ JavaScript ਦੇ ਮੂਲ ਐਰੇ ਅਤੇ ਆਬਜੈਕਟ ਹੈਂਡਲਿੰਗ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਉਹੀ ਨਤੀਜਾ ਪੈਦਾ ਕਰਨ ਲਈ ਇਹਨਾਂ ਕਦਮਾਂ ਰਾਹੀਂ ਤੁਹਾਡੀ ਅਗਵਾਈ ਕਰੇਗਾ।
ਇਸ ਗਾਈਡ ਦੇ ਅੰਤ ਤੱਕ, ਤੁਹਾਡੇ ਕੋਲ ਇੱਕ ਕਾਰਜਸ਼ੀਲ JavaScript ਕੋਡ ਹੋਵੇਗਾ ਜੋ Python ਕੋਡ ਦੀ ਕਾਰਜਕੁਸ਼ਲਤਾ ਦੀ ਨਕਲ ਕਰਦਾ ਹੈ, ਜੋ ਤੁਹਾਨੂੰ ਦੋ ਭਾਸ਼ਾਵਾਂ ਦੇ ਵਿਚਕਾਰ ਸਮਾਨਤਾਵਾਂ ਨੂੰ ਸਮਝਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ। ਆਉ ਅਨੁਵਾਦ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਡੁਬਕੀ ਮਾਰੀਏ ਅਤੇ ਖੋਜ ਕਰੀਏ ਕਿ ਡੇਟਾ ਫਿਲਟਰਿੰਗ ਅਤੇ ਮੁੜ ਪ੍ਰਾਪਤੀ ਨੂੰ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਢੰਗ ਨਾਲ ਕਿਵੇਂ ਸੰਭਾਲਣਾ ਹੈ।
ਹੁਕਮ | ਵਰਤੋਂ ਦੀ ਉਦਾਹਰਨ |
---|---|
filter() | ਇਹ ਐਰੇ ਵਿਧੀ ਇੱਕ ਨਵੀਂ ਐਰੇ ਬਣਾਉਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ ਜਿਸ ਵਿੱਚ ਸਾਰੇ ਤੱਤ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ ਜੋ ਕੁਝ ਮਾਪਦੰਡਾਂ ਨਾਲ ਮੇਲ ਖਾਂਦੇ ਹਨ। ਇਸ ਸਮੱਸਿਆ ਵਿੱਚ, ਇਸਦੀ ਵਰਤੋਂ ਖਾਸ ਮਹੀਨੇ, ਸਾਈਟ ਅਤੇ ਵੱਧ ਤੋਂ ਵੱਧ ਚੱਲਣ ਦੇ ਘੰਟਿਆਂ ਦੁਆਰਾ ਡੇਟਾ ਨੂੰ ਫਿਲਟਰ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। |
reduce() | ਰੀਡਿਊਡ() ਵਿਧੀ ਦੀ ਵਰਤੋਂ ਐਰੇ ਰਾਹੀਂ ਦੁਹਰਾਉਣ ਅਤੇ ਇਸਨੂੰ ਇੱਕ ਸਿੰਗਲ ਮੁੱਲ ਵਿੱਚ ਘਟਾਉਣ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇੱਥੇ, ਹਰੇਕ ਐਂਟਰੀ ਦੀ ਤੁਲਨਾ ਕਰਕੇ ਵੱਧ ਤੋਂ ਵੱਧ 'ਰਨ ਆਵਰ' ਵਾਲੀ ਕਤਾਰ ਲੱਭਣ ਲਈ ਲਾਗੂ ਕੀਤਾ ਗਿਆ ਹੈ। |
Math.max() | ਇਹ ਫੰਕਸ਼ਨ ਮੁੱਲਾਂ ਦੇ ਦਿੱਤੇ ਗਏ ਸਮੂਹ ਤੋਂ ਸਭ ਤੋਂ ਵੱਡੀ ਸੰਖਿਆ ਵਾਪਸ ਕਰਦਾ ਹੈ। ਇਹ ਫਿਲਟਰ ਕੀਤੇ ਡੇਟਾਸੈਟ ਦੇ ਅੰਦਰ ਸਭ ਤੋਂ ਵੱਧ 'ਰਨ ਆਵਰ' ਲੱਭਣ ਲਈ ਮੈਪ() ਵਿਧੀ ਦੇ ਨਾਲ ਜੋੜ ਕੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। |
map() | map() ਦੀ ਵਰਤੋਂ ਹਰ ਐਲੀਮੈਂਟ 'ਤੇ ਪ੍ਰਦਾਨ ਕੀਤੇ ਫੰਕਸ਼ਨ ਨੂੰ ਕਾਲ ਕਰਨ ਦੇ ਨਤੀਜਿਆਂ ਨਾਲ ਭਰੀ ਇੱਕ ਨਵੀਂ ਐਰੇ ਬਣਾਉਣ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇੱਥੇ, ਇਹ Math.max() ਵਿੱਚ ਪਾਸ ਕਰਨ ਲਈ ਹਰੇਕ ਫਿਲਟਰ ਕੀਤੀ ਕਤਾਰ ਤੋਂ 'ਰਨ ਆਵਰ' ਕੱਢਦਾ ਹੈ। |
?. (Optional Chaining) | ਵਿਕਲਪਿਕ ਚੇਨਿੰਗ ਆਪਰੇਟਰ (?.) ਦੀ ਵਰਤੋਂ ਡੂੰਘੇ ਨੇਸਟਡ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਤੱਕ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਪਹੁੰਚ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਦੋਂ ਕੋਈ ਸੰਪਤੀ ਮੌਜੂਦ ਨਹੀਂ ਹੁੰਦੀ ਹੈ ਤਾਂ ਗਲਤੀਆਂ ਨੂੰ ਰੋਕਦਾ ਹੈ। ਇਸ ਸਕ੍ਰਿਪਟ ਵਿੱਚ, ਇਸਦੀ ਵਰਤੋਂ ਸਿਰਫ਼ 'ਫੈਕਟਰ' ਨੂੰ ਮੁੜ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜੇਕਰ ਅਧਿਕਤਮ 'ਰਨ ਆਵਰ' ਵਾਲੀ ਕਤਾਰ ਮੌਜੂਦ ਹੋਵੇ। |
spread operator (...) | ਸਪ੍ਰੈਡ ਆਪਰੇਟਰ ਨੂੰ ਵਿਅਕਤੀਗਤ ਤੱਤਾਂ ਵਿੱਚ ਇੱਕ ਐਰੇ ਦਾ ਵਿਸਤਾਰ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਇਸ ਸਥਿਤੀ ਵਿੱਚ, ਇਸਦੀ ਵਰਤੋਂ Math.max() ਵਿੱਚ ਫਿਲਟਰ ਕੀਤੀਆਂ ਕਤਾਰਾਂ ਵਿੱਚੋਂ ਕੱਢੇ ਗਏ ਸਾਰੇ 'ਰਨ ਆਵਰ' ਮੁੱਲਾਂ ਨੂੰ ਪਾਸ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। |
find() | find() ਇੱਕ ਐਰੇ ਵਿਧੀ ਹੈ ਜੋ ਕਿਸੇ ਸ਼ਰਤ ਨੂੰ ਸੰਤੁਸ਼ਟ ਕਰਨ ਵਾਲੇ ਪਹਿਲੇ ਤੱਤ ਨੂੰ ਵਾਪਸ ਕਰਨ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। ਇੱਥੇ, ਇਹ ਉਸ ਕਤਾਰ ਨੂੰ ਲੱਭਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜਿੱਥੇ 'ਰਨ ਆਵਰ' ਵੱਧ ਤੋਂ ਵੱਧ ਮੁੱਲ ਦੇ ਬਰਾਬਰ ਹੁੰਦਾ ਹੈ। |
validate inputs | ਹਾਲਾਂਕਿ ਇੱਕ ਖਾਸ ਫੰਕਸ਼ਨ ਨਹੀਂ ਹੈ, ਇਹ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਇਨਪੁਟ ਪ੍ਰਮਾਣਿਕਤਾ ਮਹੱਤਵਪੂਰਨ ਹੈ ਕਿ ਫੰਕਸ਼ਨ ਅਚਾਨਕ ਇਨਪੁਟਸ, ਜਿਵੇਂ ਕਿ ਇੱਕ ਖਾਲੀ ਡੇਟਾਸੈਟ ਜਾਂ ਗਲਤ ਡੇਟਾ ਕਿਸਮਾਂ ਨਾਲ ਸਹੀ ਢੰਗ ਨਾਲ ਵਿਵਹਾਰ ਕਰਦਾ ਹੈ। |
null checks | ਰਨਟਾਈਮ ਗਲਤੀਆਂ ਤੋਂ ਬਚਣ ਲਈ ਕੋਡ ਅਕਸਰ ਨਲ ਜਾਂ ਖਾਲੀ ਮੁੱਲਾਂ ਦੀ ਜਾਂਚ ਕਰਦਾ ਹੈ, ਖਾਸ ਕਰਕੇ ਜਦੋਂ ਸੰਭਾਵੀ ਤੌਰ 'ਤੇ ਅਧੂਰੇ ਡੇਟਾਸੈਟਾਂ ਨਾਲ ਨਜਿੱਠਣਾ ਹੁੰਦਾ ਹੈ। ਇਹ ਜਾਂਚਾਂ ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦੀਆਂ ਹਨ ਕਿ ਜਦੋਂ ਕੋਈ ਵੈਧ ਨਤੀਜਾ ਨਹੀਂ ਮਿਲਦਾ ਹੈ ਤਾਂ ਫੰਕਸ਼ਨ ਨਲ ਵਾਪਸ ਕਰਦਾ ਹੈ। |
ਪਾਈਥਨ ਫਿਲਟਰਿੰਗ ਤਰਕ ਨੂੰ JavaScript ਵਿੱਚ ਅਨੁਵਾਦ ਕਰਨਾ: ਇੱਕ ਡੂੰਘੀ ਗੋਤਾਖੋਰੀ
ਪਹਿਲੀ JavaScript ਸਕ੍ਰਿਪਟ ਪਾਈਥਨ ਫੰਕਸ਼ਨ ਦਾ ਅਨੁਵਾਦ ਕਰਕੇ ਕੰਮ ਕਰਦੀ ਹੈ, ਜੋ ਪਾਂਡਾ ਡੇਟਾਫ੍ਰੇਮ ਨੂੰ ਫਿਲਟਰ ਅਤੇ ਪ੍ਰੋਸੈਸ ਕਰਦੀ ਹੈ, ਇੱਕ ਸਮਾਨ JavaScript ਵਿਧੀ ਵਿੱਚ ਜੋ ਆਬਜੈਕਟ ਦੀਆਂ ਐਰੇ ਦੇ ਨਾਲ ਇੱਕ ਸਮਾਨ ਕੰਮ ਨੂੰ ਹੈਂਡਲ ਕਰਦੀ ਹੈ। ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਪ੍ਰਕਿਰਿਆ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ ਫਿਲਟਰ() ਡੇਟਾ ਤੋਂ ਸਾਰੀਆਂ ਕਤਾਰਾਂ ਨੂੰ ਐਕਸਟਰੈਕਟ ਕਰਨ ਦਾ ਤਰੀਕਾ (ਆਬਜੈਕਟਾਂ ਦੀ ਇੱਕ ਐਰੇ ਵਜੋਂ ਪ੍ਰਸਤੁਤ ਕੀਤਾ ਗਿਆ) ਜੋ ਪ੍ਰਦਾਨ ਕੀਤੇ ਗਏ ਮਹੀਨੇ, ਸਾਈਟ, ਅਤੇ ਜਿੱਥੇ 'ਰਨ ਘੰਟੇ' ਇੰਪੁੱਟ ਤੋਂ ਘੱਟ ਜਾਂ ਬਰਾਬਰ ਹਨ। ਇਹ ਨਾਜ਼ੁਕ ਹੈ ਕਿਉਂਕਿ ਇਹ ਨਕਲ ਕਰਦਾ ਹੈ ਕਿ ਕਿਵੇਂ ਸਥਾਨ[] Pandas ਵਿੱਚ ਫੰਕਸ਼ਨ ਪਾਈਥਨ ਵਿੱਚ ਕੰਮ ਕਰਦਾ ਹੈ, ਕੋਡ ਨੂੰ ਕਈ ਸ਼ਰਤਾਂ ਦੇ ਅਧਾਰ ਤੇ ਸੰਬੰਧਿਤ ਰਿਕਾਰਡਾਂ ਨੂੰ ਐਕਸਟਰੈਕਟ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ।
ਅੱਗੇ, ਵੱਧ ਤੋਂ ਵੱਧ 'ਰਨ ਆਵਰ' ਨਾਲ ਕਤਾਰ ਦੀ ਪਛਾਣ ਕਰਨ ਲਈ ਫਿਲਟਰ ਕੀਤੇ ਡੇਟਾ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਸਕ੍ਰਿਪਟ JavaScript ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ ਘਟਾਓ() ਫੰਕਸ਼ਨ, ਜੋ ਕਿ ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ਐਰੇ ਵਿਧੀ ਹੈ ਜੋ ਤੁਹਾਨੂੰ ਇੱਕ ਐਰੇ ਦੁਆਰਾ ਦੁਹਰਾਉਣ ਅਤੇ ਨਤੀਜਿਆਂ ਨੂੰ ਇਕੱਠਾ ਕਰਨ ਜਾਂ ਤੁਲਨਾ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ। ਇਹ ਵਿਧੀ ਅਧਿਕਤਮ ਮੁੱਲ ਲੱਭਣ ਲਈ ਆਦਰਸ਼ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਸਕ੍ਰਿਪਟ ਨੂੰ ਹਰ ਕਤਾਰ ਦੇ 'ਰਨ ਘੰਟਿਆਂ' ਦੀ ਲਗਾਤਾਰ ਤੁਲਨਾ ਕਰਨ ਦੇ ਯੋਗ ਬਣਾਉਂਦੀ ਹੈ ਜਦੋਂ ਤੱਕ ਇਹ ਸਭ ਤੋਂ ਉੱਚੇ ਮੁੱਲ ਵਾਲੀ ਕਤਾਰ ਨੂੰ ਨਹੀਂ ਲੱਭਦੀ। ਇਹ ਦੀ ਵਰਤੋਂ ਕਰਨ ਦੇ ਬਰਾਬਰ ਹੈ ਅਧਿਕਤਮ() ਪਾਈਥਨ ਵਿੱਚ ਫੰਕਸ਼ਨ, ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਇੱਕ ਸੁਚਾਰੂ ਤਬਦੀਲੀ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
ਦੂਜੀ ਪਹੁੰਚ ਵਿੱਚ, ਸਕ੍ਰਿਪਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵੱਧ ਤੋਂ ਵੱਧ 'ਰਨ ਆਵਰਸ' ਲੱਭਣ ਨੂੰ ਸਰਲ ਬਣਾਉਂਦਾ ਹੈ Math.max() ਦੇ ਨਾਲ ਫੰਕਸ਼ਨ ਨਕਸ਼ਾ() ਢੰਗ. ਮੈਪ ਫੰਕਸ਼ਨ ਹਰੇਕ ਕਤਾਰ ਤੋਂ 'ਰਨ ਆਵਰ' ਕੱਢਦਾ ਹੈ ਅਤੇ ਇਸਨੂੰ Math.max 'ਤੇ ਪਾਸ ਕਰਦਾ ਹੈ, ਜੋ ਸਭ ਤੋਂ ਵੱਡਾ ਮੁੱਲ ਦਿੰਦਾ ਹੈ। ਇੱਕ ਵਾਰ ਵੱਧ ਤੋਂ ਵੱਧ 'ਰਨ ਆਵਰ' ਮਿਲ ਜਾਣ 'ਤੇ, ਸਕ੍ਰਿਪਟ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ ਲੱਭੋ() ਅਨੁਸਾਰੀ ਕਤਾਰ ਦਾ ਪਤਾ ਲਗਾਉਣ ਦਾ ਤਰੀਕਾ। ਇਹ ਪਹੁੰਚ ਬਿਲਟ-ਇਨ ਐਰੇ ਤਰੀਕਿਆਂ ਦਾ ਲਾਭ ਉਠਾਉਂਦੀ ਹੈ ਅਤੇ ਸਮੱਸਿਆ ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ ਇੱਕ ਵਧੇਰੇ ਸੰਖੇਪ ਅਤੇ ਪੜ੍ਹਨਯੋਗ ਵਿਧੀ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਕਰਦੀ ਹੈ।
ਅੰਤ ਵਿੱਚ, ਤੀਜੀ ਸਕ੍ਰਿਪਟ ਇਨਪੁਟ ਪ੍ਰਮਾਣਿਕਤਾ ਅਤੇ ਕਿਨਾਰੇ ਦੇ ਕੇਸ ਹੈਂਡਲਿੰਗ ਨੂੰ ਸ਼ਾਮਲ ਕਰਕੇ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਂਦੀ ਹੈ। ਇਹ ਸਕ੍ਰਿਪਟ ਅੱਗੇ ਵਧਣ ਤੋਂ ਪਹਿਲਾਂ ਜਾਂਚ ਕਰਦੀ ਹੈ ਕਿ ਡੇਟਾ ਵੈਧ ਅਤੇ ਗੈਰ-ਖਾਲੀ ਹੈ ਜਾਂ ਨਹੀਂ। ਇਹ ਫਿਲਟਰਿੰਗ ਪੜਾਅ ਦੇ ਅੰਦਰ ਡੇਟਾਸੈਟ ਨੂੰ ਵੀ ਘਟਾਉਂਦਾ ਹੈ, ਇਸ ਨੂੰ ਹੋਰ ਕੁਸ਼ਲ ਬਣਾਉਂਦਾ ਹੈ। ਵਿਕਲਪਿਕ ਚੇਨਿੰਗ ਜੋੜ ਕੇ ?. ਅਤੇ ਪਰਬੰਧਨ null ਕੇਸਾਂ ਵਿੱਚ, ਸਕ੍ਰਿਪਟ ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦੀ ਹੈ ਕਿ ਭਾਵੇਂ ਕੋਈ ਡਾਟਾ ਸ਼ਰਤਾਂ ਨਾਲ ਮੇਲ ਨਹੀਂ ਖਾਂਦਾ, ਇਹ ਕ੍ਰੈਸ਼ ਨਹੀਂ ਹੋਵੇਗਾ ਅਤੇ ਇੱਕ ਉਚਿਤ ਨਤੀਜਾ ਵਾਪਸ ਕਰੇਗਾ। ਇਹ ਉਹਨਾਂ ਮਾਮਲਿਆਂ ਵਿੱਚ ਖਾਸ ਤੌਰ 'ਤੇ ਮਹੱਤਵਪੂਰਨ ਹੈ ਜਿੱਥੇ ਗੁੰਮ ਜਾਂ ਅਧੂਰਾ ਡੇਟਾ ਰਨਟਾਈਮ ਗਲਤੀਆਂ ਦਾ ਕਾਰਨ ਬਣ ਸਕਦਾ ਹੈ, ਇਸ ਤਰ੍ਹਾਂ ਪ੍ਰਦਰਸ਼ਨ ਅਤੇ ਭਰੋਸੇਯੋਗਤਾ ਦੋਵਾਂ ਨੂੰ ਵਧਾਉਂਦਾ ਹੈ।
Python DataFrame ਫਿਲਟਰਿੰਗ ਤਰਕ ਨੂੰ JavaScript ਵਿੱਚ ਬਦਲਣਾ: ਇੱਕ ਸੰਖੇਪ ਜਾਣਕਾਰੀ
ਡੇਟਾ ਨੂੰ ਫਿਲਟਰ ਕਰਨ ਅਤੇ ਐਕਸਟਰੈਕਟ ਕਰਨ ਲਈ JavaScript ਵਿੱਚ ਇੱਕ ਕਾਰਜਸ਼ੀਲ ਪ੍ਰੋਗਰਾਮਿੰਗ ਪਹੁੰਚ ਦੀ ਵਰਤੋਂ ਕਰਨਾ
const getFactorForMaxRunHours = (df, month, site, rhours) => {
// Step 1: Filter dataframe by month, site, and run hours
const df1 = df.filter(row => row.Month === month && row.Site === site && row["Run Hours"] <= rhours);
// Step 2: Find the row with the maximum 'Run Hours'
let maxRunHoursEntry = df1.reduce((max, row) => row["Run Hours"] > max["Run Hours"] ? row : max, df1[0]);
// Step 3: Return the factor associated with the max run hours entry
return maxRunHoursEntry ? maxRunHoursEntry.Factor : null;
};
// Example Data
const df = [
{ Year: 2021, Month: 10, "Run Hours": 62.2, Site: "Site A", Factor: 1.5 },
{ Year: 2021, Month: 10, "Run Hours": 73.6, Site: "Site B", Factor: 2.3 },
// more data entries...
];
// Example usage
const factor = getFactorForMaxRunHours(df, 10, "Site A", 70);
ਵਿਕਲਪਕ ਪਹੁੰਚ: JavaScript ES6 ਐਰੇ ਢੰਗਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ
ਇੱਕ ਸਾਫ਼ ਅਤੇ ਕੁਸ਼ਲ ਹੱਲ ਲਈ ਆਧੁਨਿਕ ES6 ਐਰੇ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਸ਼ਾਮਲ ਕਰਨਾ
function getFactorForMaxRunHours(df, month, site, rhours) {
// Step 1: Filter by month, site, and run hours
const filtered = df.filter(row => row.Month === month && row.Site === site && row["Run Hours"] <= rhours);
// Step 2: Extract max run hours using spread operator
const maxRunHours = Math.max(...filtered.map(row => row["Run Hours"]));
// Step 3: Find and return the factor associated with the max run hours
const factor = filtered.find(row => row["Run Hours"] === maxRunHours)?.Factor;
return factor || null;
}
// Example Data and Usage
const factor = getFactorForMaxRunHours(df, 10, "Site B", 80);
ਅਨੁਕੂਲਿਤ ਹੱਲ: ਐਜ ਕੇਸਾਂ ਅਤੇ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਸੰਭਾਲਣਾ
ਐਜ ਕੇਸ ਹੈਂਡਲਿੰਗ ਅਤੇ ਪ੍ਰਦਰਸ਼ਨ ਅਨੁਕੂਲਨ ਦੇ ਨਾਲ ਸੁਧਾਰਿਆ ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਹੱਲ
function getFactorForMaxRunHoursOptimized(df, month, site, rhours) {
// Step 1: Validate inputs
if (!df || !Array.isArray(df) || df.length === 0) return null;
// Step 2: Filter data by the required conditions
const filteredData = df.filter(row => row.Month === month && row.Site === site && row["Run Hours"] <= rhours);
if (filteredData.length === 0) return null; // Handle empty result
// Step 3: Use reduce to get max 'Run Hours' entry directly
const maxRunHoursEntry = filteredData.reduce((prev, current) =>
current["Run Hours"] > prev["Run Hours"] ? current : prev, filteredData[0]);
// Step 4: Return the factor or null if not found
return maxRunHoursEntry ? maxRunHoursEntry.Factor : null;
}
// Test cases to validate the solution
console.log(getFactorForMaxRunHoursOptimized(df, 10, "Site A", 65)); // Expected output: Factor for Site A
console.log(getFactorForMaxRunHoursOptimized([], 10, "Site A", 65)); // Expected output: null
JavaScript ਅਤੇ Python ਡਾਟਾ ਹੈਂਡਲਿੰਗ ਅੰਤਰਾਂ ਦੀ ਪੜਚੋਲ ਕਰਨਾ
ਪਾਇਥਨ ਫੰਕਸ਼ਨਾਂ ਦਾ ਅਨੁਵਾਦ ਕਰਦੇ ਸਮੇਂ ਜੋ ਪਾਂਡਾਸ ਵਰਗੀਆਂ ਲਾਇਬ੍ਰੇਰੀਆਂ ਨੂੰ JavaScript ਵਿੱਚ ਵਰਤਦੇ ਹਨ, ਇਹ ਸਮਝਣਾ ਜ਼ਰੂਰੀ ਹੈ ਕਿ ਹਰੇਕ ਭਾਸ਼ਾ ਡੇਟਾ ਦਾ ਪ੍ਰਬੰਧਨ ਕਿਵੇਂ ਕਰਦੀ ਹੈ। ਜਦਕਿ ਪਾਈਥਨ ਵਰਤਦਾ ਹੈ ਪਾਂਡਾ ਸ਼ਕਤੀਸ਼ਾਲੀ ਅਤੇ ਉੱਚ-ਪੱਧਰੀ ਡਾਟਾਫ੍ਰੇਮ ਹੇਰਾਫੇਰੀ ਲਈ, JavaScript ਆਮ ਤੌਰ 'ਤੇ ਐਰੇ ਅਤੇ ਆਬਜੈਕਟ ਦੇ ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ, ਜਿਸ ਲਈ ਡਾਟਾ ਸਟ੍ਰਕਚਰ ਦੇ ਹੋਰ ਮੈਨੂਅਲ ਹੈਂਡਲਿੰਗ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਅਨੁਵਾਦ ਪ੍ਰਕਿਰਿਆ ਵਿੱਚ ਅਕਸਰ ਮੂਲ JavaScript ਫੰਕਸ਼ਨਾਂ ਜਿਵੇਂ ਕਿ ਇਹਨਾਂ ਓਪਰੇਸ਼ਨਾਂ ਨੂੰ ਦੁਬਾਰਾ ਬਣਾਉਣਾ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ ਫਿਲਟਰ ਅਤੇ ਨਕਸ਼ਾ, ਜੋ ਕਿ ਕੰਡੀਸ਼ਨਲ ਫਿਲਟਰਿੰਗ ਅਤੇ ਕਾਲਮ-ਅਧਾਰਿਤ ਓਪਰੇਸ਼ਨਾਂ ਦੀ ਨਕਲ ਕਰ ਸਕਦਾ ਹੈ ਜੋ ਤੁਸੀਂ ਪਾਈਥਨ ਵਿੱਚ ਕਰੋਗੇ।
ਇੱਕ ਹੋਰ ਮੁੱਖ ਅੰਤਰ ਇਸ ਗੱਲ ਵਿੱਚ ਆਉਂਦਾ ਹੈ ਕਿ ਹਰੇਕ ਭਾਸ਼ਾ ਇਹਨਾਂ ਕਾਰਵਾਈਆਂ ਨੂੰ ਕਿਵੇਂ ਅਨੁਕੂਲ ਬਣਾਉਂਦੀ ਹੈ। ਪਾਂਡਾ ਵੈਕਟੋਰਾਈਜ਼ੇਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਪੂਰੇ ਡੇਟਾਫ੍ਰੇਮਾਂ 'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ, ਜੋ ਇਸਨੂੰ ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਲਈ ਬਹੁਤ ਤੇਜ਼ ਬਣਾਉਂਦਾ ਹੈ। ਇਸਦੇ ਉਲਟ, JavaScript ਲੜੀਵਾਰ ਐਰੇ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਡੈਟਾਸੈੱਟ ਦੇ ਆਕਾਰ ਵਧਣ ਨਾਲ ਪ੍ਰਦਰਸ਼ਨ ਚੁਣੌਤੀਆਂ ਪੈਦਾ ਹੋ ਸਕਦੀਆਂ ਹਨ। ਅਨੁਕੂਲ ਢੰਗਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਜਿਵੇਂ ਕਿ ਘਟਾਓ ਅਤੇ Math.max, JavaScript ਕੋਡ ਛੋਟੇ ਡੇਟਾਸੇਟਾਂ ਲਈ ਵਾਜਬ ਪ੍ਰਦਰਸ਼ਨ ਪੱਧਰਾਂ ਨੂੰ ਕਾਇਮ ਰੱਖਦੇ ਹੋਏ ਪਾਂਡਿਆਂ ਦੀ ਬਹੁਤ ਸਾਰੀ ਕਾਰਜਕੁਸ਼ਲਤਾ ਦੀ ਨਕਲ ਕਰ ਸਕਦਾ ਹੈ।
ਅੰਤ ਵਿੱਚ, ਪਾਈਥਨ ਸਕ੍ਰਿਪਟਾਂ ਨੂੰ JavaScript ਵਿੱਚ ਬਦਲਦੇ ਸਮੇਂ ਗਲਤੀ ਹੈਂਡਲਿੰਗ ਅਤੇ ਡੇਟਾ ਪ੍ਰਮਾਣਿਕਤਾ ਮੁੱਖ ਪਹਿਲੂ ਹਨ। ਪਾਈਥਨ ਵਿੱਚ, ਫੰਕਸ਼ਨ ਜਿਵੇਂ ਕਿ loc ਜੇਕਰ ਡੇਟਾ ਗੁੰਮ ਹੈ ਜਾਂ ਅਵੈਧ ਹੈ ਤਾਂ ਸਪਸ਼ਟ ਅਪਵਾਦ ਪੈਦਾ ਕਰੋ। JavaScript ਵਿੱਚ, ਤੁਹਾਨੂੰ ਹੱਥੀਂ ਇਨਪੁਟ ਪ੍ਰਮਾਣਿਕਤਾ ਅਤੇ ਹੈਂਡਲ ਸ਼ਾਮਲ ਕਰਨ ਦੀ ਲੋੜ ਹੈ null ਜਾਂ ਸਕ੍ਰਿਪਟ ਨੂੰ ਅਸਫਲ ਹੋਣ ਤੋਂ ਰੋਕਣ ਲਈ ਪਰਿਭਾਸ਼ਿਤ ਮੁੱਲ। ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਨਾ ਕਿ ਇਨਪੁਟ ਡੇਟਾ ਢਾਂਚਾ ਸਹੀ ਢੰਗ ਨਾਲ ਫਾਰਮੈਟ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਇਹਨਾਂ ਦੋ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਤਬਦੀਲੀ ਕਰਦੇ ਸਮੇਂ ਫਾਲਬੈਕ ਮਕੈਨਿਜ਼ਮ ਬਣਾਉਣਾ ਜ਼ਰੂਰੀ ਹੈ।
ਪਾਈਥਨ ਫੰਕਸ਼ਨਾਂ ਨੂੰ JavaScript ਵਿੱਚ ਅਨੁਵਾਦ ਕਰਨ ਬਾਰੇ ਆਮ ਸਵਾਲ
- ਪਾਂਡਿਆਂ ਦੇ ਬਰਾਬਰ ਕੀ ਹੈ? loc[] JavaScript ਵਿੱਚ?
- JavaScript ਵਿੱਚ, ਤੁਸੀਂ ਵਰਤ ਸਕਦੇ ਹੋ filter() ਪੰਡਾਂ ਦੇ ਸਮਾਨ ਕਤਾਰਾਂ ਦੀ ਕੰਡੀਸ਼ਨਲ ਫਿਲਟਰਿੰਗ ਨੂੰ ਦੁਹਰਾਉਣ ਦਾ ਤਰੀਕਾ loc[].
- ਮੈਂ ਪਾਈਥਨ ਦੇ ਮੁਕਾਬਲੇ JavaScript ਵਿੱਚ ਗੁੰਮ ਹੋਏ ਡੇਟਾ ਨੂੰ ਕਿਵੇਂ ਸੰਭਾਲਾਂ?
- ਪਾਇਥਨ ਦੇ ਪਾਂਡਾ ਦੇ ਉਲਟ, ਜਿੱਥੇ ਗੁੰਮ ਡੇਟਾ ਨੂੰ ਸੰਭਾਲਿਆ ਜਾਂਦਾ ਹੈ isnull(), JavaScript ਨੂੰ ਮੈਨੂਅਲ ਦੀ ਲੋੜ ਹੈ null ਜਾਂ undefined ਰਨਟਾਈਮ ਗਲਤੀਆਂ ਨੂੰ ਰੋਕਣ ਲਈ ਜਾਂਚ ਕਰਦਾ ਹੈ।
- JavaScript ਦੇ ਬਰਾਬਰ ਕੀ ਹੈ max() ਪਾਈਥਨ ਵਿੱਚ?
- ਤੁਸੀਂ ਵਰਤ ਸਕਦੇ ਹੋ Math.max() ਐਰੇ ਹੇਰਾਫੇਰੀ ਫੰਕਸ਼ਨਾਂ ਨਾਲ ਜੋੜਿਆ ਗਿਆ ਹੈ ਜਿਵੇਂ ਕਿ map() JavaScript ਵਿੱਚ ਵੱਧ ਤੋਂ ਵੱਧ ਮੁੱਲ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ.
- ਮੈਂ ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਲਈ JavaScript ਵਿੱਚ ਪ੍ਰਦਰਸ਼ਨ ਨੂੰ ਕਿਵੇਂ ਅਨੁਕੂਲ ਬਣਾ ਸਕਦਾ ਹਾਂ?
- ਵੱਡੇ ਡੇਟਾਸੇਟਾਂ ਲਈ JavaScript ਨੂੰ ਅਨੁਕੂਲ ਬਣਾਉਣ ਲਈ, ਵਿਧੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰੋ ਜਿਵੇਂ ਕਿ reduce() ਅਤੇ ਕੁਸ਼ਲ ਫਿਲਟਰਿੰਗ ਅਤੇ ਛਾਂਟੀ ਦੁਆਰਾ ਦੁਹਰਾਓ ਦੀ ਸੰਖਿਆ ਨੂੰ ਸੀਮਿਤ ਕਰੋ।
- ਕੀ JavaScript ਵਿੱਚ Pandas ਵਰਗੀਆਂ ਲਾਇਬ੍ਰੇਰੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਸੰਭਵ ਹੈ?
- ਹਾਂ, ਲਾਇਬ੍ਰੇਰੀਆਂ ਪਸੰਦ ਹਨ D3.js ਜਾਂ Danfo.js JavaScript ਵਿੱਚ DataFrame-ਵਰਗੇ ਕਾਰਜਾਂ ਲਈ ਸਮਾਨ ਕਾਰਜਸ਼ੀਲਤਾ ਪ੍ਰਦਾਨ ਕਰੋ।
ਰੈਪਿੰਗ ਅੱਪ: ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਪਾਈਥਨ ਲਾਜਿਕ ਦਾ ਅਨੁਵਾਦ ਕਰਨਾ
ਇੱਕ ਪਾਈਥਨ ਫੰਕਸ਼ਨ ਨੂੰ ਬਦਲਣ ਦੀ ਪ੍ਰਕਿਰਿਆ ਜੋ ਪਾਂਡਾ ਨੂੰ JavaScript ਵਿੱਚ ਵਰਤਦੀ ਹੈ, ਵਿੱਚ ਡੇਟਾ ਹੈਂਡਲਿੰਗ ਵਿੱਚ ਅੰਤਰ ਨੂੰ ਸਮਝਣਾ ਸ਼ਾਮਲ ਹੁੰਦਾ ਹੈ। JavaScript ਵਿੱਚ ਬਿਲਟ-ਇਨ DataFrame ਢਾਂਚੇ ਦੀ ਘਾਟ ਹੈ, ਇਸਲਈ ਐਰੇ ਅਤੇ ਆਬਜੈਕਟ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਆਪਰੇਸ਼ਨਾਂ ਨੂੰ ਹੱਥੀਂ ਲਾਗੂ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਵਰਗੇ ਢੰਗ ਫਿਲਟਰ() ਅਤੇ ਘਟਾਓ() ਇਸ ਪਰਿਵਰਤਨ ਵਿੱਚ ਮਹੱਤਵਪੂਰਨ ਭੂਮਿਕਾ ਨਿਭਾਉਂਦੇ ਹਨ।
ਸਭ ਤੋਂ ਵਧੀਆ ਅਭਿਆਸਾਂ ਦੀ ਪਾਲਣਾ ਕਰਕੇ ਅਤੇ ਇਹ ਯਕੀਨੀ ਬਣਾ ਕੇ ਕਿ ਇਨਪੁਟਸ ਪ੍ਰਮਾਣਿਤ ਹਨ, ਅਸੀਂ ਕੁਸ਼ਲ ਅਤੇ ਕਾਰਜਸ਼ੀਲ JavaScript ਕੋਡ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੇ ਹਾਂ ਜੋ ਮੂਲ ਪਾਈਥਨ ਫੰਕਸ਼ਨ ਦੀ ਨਕਲ ਕਰਦਾ ਹੈ। ਹਾਲਾਂਕਿ JavaScript ਨੂੰ ਪਾਈਥਨ ਦੇ ਉੱਚ-ਪੱਧਰੀ ਐਬਸਟਰੈਕਸ਼ਨਾਂ ਦੇ ਮੁਕਾਬਲੇ ਵਧੇਰੇ ਮੈਨੂਅਲ ਹੈਂਡਲਿੰਗ ਦੀ ਲੋੜ ਹੈ, ਇਹ ਅਜੇ ਵੀ ਗੁੰਝਲਦਾਰ ਡਾਟਾ ਫਿਲਟਰਿੰਗ ਕਾਰਜਾਂ ਨੂੰ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਢੰਗ ਨਾਲ ਕਰ ਸਕਦਾ ਹੈ।
Python ਨੂੰ JavaScript ਵਿੱਚ ਅਨੁਵਾਦ ਕਰਨ ਲਈ ਹਵਾਲੇ ਅਤੇ ਡਾਟਾ ਸਰੋਤ
- ਇਹ ਲੇਖ Python ਤੋਂ JavaScript ਪਰਿਵਰਤਨ ਵਿੱਚ ਮਦਦ ਕਰਨ ਲਈ ਵੱਖ-ਵੱਖ ਔਨਲਾਈਨ ਪ੍ਰੋਗਰਾਮਿੰਗ ਸਰੋਤਾਂ ਤੋਂ ਸਮੱਗਰੀ 'ਤੇ ਆਧਾਰਿਤ ਹੈ। ਪਾਂਡਾਸ ਓਪਰੇਸ਼ਨਾਂ ਦੇ ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਸਮਾਨਤਾਵਾਂ ਦੀ ਪੜਚੋਲ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਮੁੱਖ ਸਰੋਤ ਇੱਥੇ ਪਾਇਆ ਜਾ ਸਕਦਾ ਹੈ ਪਾਂਡਾਸ ਦਸਤਾਵੇਜ਼ .
- JavaScript ਡੇਟਾ ਹੇਰਾਫੇਰੀ ਤਕਨੀਕਾਂ ਲਈ, ਤੋਂ ਸਰੋਤ MDN ਵੈੱਬ ਡੌਕਸ ਵਰਗੇ ਐਰੇ ਤਰੀਕਿਆਂ ਦੀ ਸਹੀ ਵਰਤੋਂ ਨੂੰ ਯਕੀਨੀ ਬਣਾਉਣ ਲਈ ਹਵਾਲਾ ਦਿੱਤਾ ਗਿਆ ਸੀ filter(), reduce(), ਅਤੇ Math.max().
- JavaScript ਵਿੱਚ ਡੇਟਾਸੇਟਾਂ ਨੂੰ ਕਿਵੇਂ ਸੰਭਾਲਣਾ ਹੈ ਬਾਰੇ ਵਾਧੂ ਮਾਰਗਦਰਸ਼ਨ ਇਸ ਤੋਂ ਪ੍ਰਾਪਤ ਕੀਤਾ ਗਿਆ ਸੀ JavaScript.info , ਜੋ JavaScript ਡੇਟਾ ਹੈਂਡਲਿੰਗ ਦੀ ਸਪਸ਼ਟ ਵਿਆਖਿਆ ਪੇਸ਼ ਕਰਦਾ ਹੈ।