ডেভসংকেত

Synchronous JavaScript

কন্ট্রিবিউটর

    শেয়ার করুন

    জাভাস্ক্রিপ্ট কিভাবে ব্রাউসার এর ভিতরে কাজ করে

    • const sync = () =>{
    • console.log('Task two Completed');
    • var currentTime = new Date().getTime()
    •  while(currentTime + 3000 >= new Date().getTime());
    •  console.log('Task three Completed')
    • }
    • console.log('Task One Completed')
    • sync();
    • console.log('All Tasks Completd');
    • সবার প্রথমে একটা মেইন ফাঙ্কশন কল হয়। .যেকনো জাভাস্ক্রিপ্ট কোড রান হবার আগে একটা মেইন ফাঙ্কশন রান হয়.

    • এরপর লাইন বই লাইন বিভিন্ন জায়গায় কলগুলো হয়.

    • এখানে প্রথমে কল হয়েছে console.log('Task One Completed'); ফাঙ্কশন ..

    • লগ এর আগে sync এর যে বডিটা দেখা যাচ্ছে এটা হচ্ছে ফাঙ্কশন এর ডেফিনেশন এখানে আমরা কেনো ফাঙ্কশন কল করিনি।

    • জাভাস্ক্রিপ্ট এক্সকিউশন শুরু হবে console.log('Task One Completed'); থেকে তারপর সে লগ ফাঙ্কশনটাকে কল স্টকে কল করবে

    • তারপর কনসোলএ Task One Completed প্রিন্ট হবে।

    • এরপর লগ ফাঙ্কশন এর কাজ শেষ তারপর জাভাস্ক্রিপ্ট পরের লাইনে যাবে।

    • তারপর সে sync() ফাঙ্কশনকে দেখতে পাবে।

    • তারপর sync() ফাঙ্কশনকে সে কলস্ট্যাকে নিয়ে আসবে।

    • তারপর সে sync ফাঙ্কশন এর ভিতরে যাবে তারপর সে সেখানে console.log('Task two Completed'); ফাঙ্কশন দেখতে পাবে

    • তারপর সে console.log('Task two Completed'); ফাঙ্কশনটাকে কল স্টকে নিয়ে আসবে তারপর কনসোল এ Task two Completed প্রিন্ট হবে।

    • তারপর জাভাস্ক্রিপ্ট পরের লাইন যাবে তখন সে দেখবে ৩ সেকেন্ডের একটা while লুপ।

    • তখন ওই ৩ সেকেন্ড ব্রাউজারের পুরো একটিভিটি ব্লক হয়ে থাকবে তখন ইউসার ব্রাউজারে কোনো ক্লিক করতে পারবে না...ইউসারও ব্রাউজারে ব্লকড হয়ে থাকবে।

    • এটাই হচ্ছে জাভাস্ক্রিপ্ট এর ব্লকিং বিহেভিয়ার।

    • তারপর ৩ সেকেন্ড শেষ হবার পর সে কল স্ট্যাক কল করবে তারপর কনসোল এ Task three Completed প্রিন্ট হবে।

    • তারপর কল স্ট্যাক থেকে sync ফাঙ্কশনটা চলে যাবে

    • তারপর console.log('All Tasks Completd'); কল স্টকে আসবে।

    • তারপর কনসোল এ All Tasks Completd প্রিন্ট হবে

    ডেভসংকেত সম্পর্কে

    ডেভসংকেত এর লক্ষ্য হচ্ছে বাংলাতে একটা বড় চিটশিটের ভান্ডার গড়ে তোলা। এটা সম্পূর্ণ স্বাধীন এবং ওপেন সোর্স গিটহাব অর্গানাইজেশন।

    স্পন্সর