POSIX time چیست؟

  POSIX time​ یک سیستم برای توصیف یک نقطه مشخص از زمان است.این سیستم اول ژانویه سال ۱۹۷۰ را (UTC) به عنوان زمان صفر در نظر می گیرد و به ازای هر ثانیه ای که از آن می گذرد یکی به آن اضافه می کند.برای مثال تاریخ Thursday January 01, 1970 00:00:02 (am) را اگر بخواهیم در POSIX time  نمایش دهیم برابر است با عدد ۲٫

برای تبدیلPOSIX time می توانید از این سایت استفاده کنید.

منتشرشده در ویکی | دیدگاه‌تان را بنویسید:

Document Object در جاوا اسکریپت

هر صفحه وب که داخل مرورگر لود و اجرا می شود را می توان به عنوان یک شی ریشه یا Document Object در نظر گرفت.Document Object مشخص کننده html لود شده داخل مرورگر است.Document Object شامل خواص گوناگونی است که از طریق آن می توانیم به المان های روی صفحه دسترسی پیدا کنیم و آنها را تغییر دهیم.

Document Object Model:یک API برنامه نویسی است که با ایجاد یک ساختار منطقی می توانیم به اشیای روی صفحه دسترسی پیدا کنیم و آنها را تغییر دهیم.

برای مثال در کد بالا ساختار منطقی DOM به شکل زیر در نظر گرفته می شود:

تعریف dom

بنابراین هر المان روی صفحه دارای ساختار سلسله مراتبی است.ساختار کلی یک صفحه در مرورگر به شکل زیر است:

html-dom

 

منتشرشده در جاوااسکریپت, ویکی | دیدگاه‌تان را بنویسید:

ده چیزی که یک برنامه نویس تازه کار باید بداند!

۱-دوست داشته شدن آسان است:

در زمان ورود به شغل جدید همین که لباس مرتب بپوشید،سر وقت حاضر شوید،به بقیه لبخند بزنید قطعا باقی همکارانتان دوستتان خواهند داشت.

۲-مورد احترام قرار گرفتن سخت است:

هر مدتی که تجربه کاری دارید به محض ورود به کار جدید قطعا کسی برای دانش شما احترام خاصی قائل نخواهد بود.به عبارتی از همان ابتدا انتظار نداشته باشید که به تمام حرفهای شما گوش داده شود و یا اگر تغییری را پیشنهاد می دهید آن را عملی کنند.برای مورد احترام قرار گرفتن بایستی به صورت موثر،پایدار و روی نظم مشخص کار کنید،کارها را تمام کنید و خروجی ارائه دهید.تمام کننده بودن در کار برنامه نویسی بسیار مهم و ارزشمند است.

۳-هر چیزی که در دانشگاه یاد گرفته اید بدون استفاده به نظر می رسد:

در شش ماه ابتدایی کار بیشتر از تمام دوران دانشگاه یاد خواهید گرفت.این بدان معنا نیست که چیزهایی که یاد گرفته اید به کارتان نمی آید ولی در ابتدای کار به این فکر نکنید که هر چیزی را که یاد گرفته اید بخواهید در کار استفاده کنید.همچنین سعی کنید در رزومه خود بلند پروازی نکنید و واقعا چیزی هایی را که بلد هستید بنوسید.اکثر شرکت ها یک دوره آزمایشی دارند و در آن دوره معمولا می کنند هر چه در رزومه نوشته اید را از شما بخواهند.بنابراین سعی کنید صادقانه روزمه بنویسید.

۴-یادگیری را متوقف نکنید:

کار برنامه نویسی را با یک ذهنیت شروع کنید:من چیزهای زیادی نمی دانم ولی همه آنها را یاد خواهم گرفت.در شروع کار قطعا همه افرادی که در شرکت حضور دارند بیشتر از شما می دانند.این نباید باعث نا امیدی شما شود برعکس باید این موضوع را فرصت بدانید.مطمئن باشید در یک محیط کار حرفه ای با سوال کردن از باقی همکاران می توانید دانش زیادی کسب کنید.سعی کنید نحوه کار آنها را مشاهده کنید.به چه صورت با کیبورد کار می کنند.به چه صورت با کلید های میانبر کار می کنند.همه اینها به شما دید می دهد که در آینده حرفه ای تر کار کنید.سعی کنید زبان برنامه نویسی جدیدی یاد بگیرید همچنین سیستم عامل جدید را تست کنید.کار برنامه نوسیی نیاز به مطالعه دائمی دارد.

۵-در انتخاب IDE دقت کنید:

اگر می خواهید حرفه ای تر و دقیق تر کار کنید در ابتدای کار زیاد به فکر ابزارهای کمکی نباشید سعی کنید از یک IDE ساده تر استفاده کنید تا مجبور شوید خودتان اکثر کارها را در کد نویسی انجام دهید این کار باعث می شود روند کار را بیشتر درک کنید مثلا فرایند کامپایل کردن یک کد به چه صورت است.اگر از IDE هایی استفاده کنید که همه کار را خودشان انجام می دهند درک زیادی نسبت به خیلی از فرایند ها بدست نمی آورید.

۶-برای کسی مهم نیست که در چه دانشگاهی درس خوانده اید:

اگر کسی از شما در رابطه با دانشگاهی که در آن درس خوانده اید سوال کرد،نگران نباشید.کسی شما را قضاوت نخواهد کرد.خوب بودن در کار برنامه نویسی هیچ ربطی به دانشگاهی که در آن درس خوانده اید ندارد حتی ممکن است در رشته ای متفاوت درس خوانده باشید ولی برنامه نویس خوبی هم باشید.

۷-در ابتدای کار به راحتی سکوت کنید!

شما که وارد شغل جدید می شوید و تجربه ای در آن کار ندارید به احتمال زیاد حرفی هم برای گفتن ندارید.مشکلی نیست سکوت کنید.اگر حتی در جمع ها راه داده نمی شوید مشکلی ندارد.ساختن رابطه زمان می برد پس با سکوت شروع کنید.

۸-نگران افرادی نباشید که از ابتدا با شما مشکل دارند:

ابتدای کار ممکن است با افرادی برخورد کنید که به صورت پیش فرض شما را دوست ندارند و حتی از شما بدشان می آید.نگران نباشید.سعی نکنید آنها را تغییر دهید فقط سعی کنید راهی برای کار کردن با آنها پیدا کنید.این بهترین راه است.طبق تجربه به مرور زمان این افراد حتی به بهترین پشتیبانهای شما تبدیل خواهند شد.

۹-از حاشیه ها دوری کنید:

لازم نیست درگیر این موضوع شوید که چه کسی با چه کسی دوست هست و یا چه کسی پسر خاله مدیر عامل است.فقط به فکر این باشید که به بهترین شکل ممکن و سر وقت کارتان را تحویل دهید.مطمئن باشید هر چیزی که نیاز باشد بدانید به موقع خواهید فهمید.

۱۰-شما نمی توانید وارد سیاسی کاری ها نشوید:

در ابتدای کار اصلا به فکر بازیهای سیاسی که در شرکت است نباشید.ولی به صورت یک اصل بدانید که هر چه مسئولیت شما سنگین تر شود سیاست بازی هم زیادتر می شود.می توانید بگویید که سیاسی کاری نمی کنم ولی این کار عواقب خودش را دارد.ولی در آغار کار فقط روی یک چیز تمرکز کنید:کار را سر وقت و به صورت کامل تحویل دهید.

منتشرشده در عمومی | برچسب‌شده | دیدگاه‌تان را بنویسید:

نحوه ساخت یک عدد تصادفی در جاوا اسکریپت

در دوره آموزش جاوا اسکریپت در قسمت متدهای از پیش تعریف در جاوا اسکریپت نحوه ساخت عدد تصادفی را یاد گرفتیم.در آنجا گفته شد که متد Math.random یک عدد تصادفی را بین صفر و یک ایجاد می‌کند که معمولا اعشاری است.سوال اینجاست که اگر بخواهیم یک عدد تصادفی ما بین دو عدد و همچنین بدون اعشار  ایجاد کنیم باید چگونه عمل کنیم؟

کد زیر می‌تواند یک عدد تصادفی در یک بازه را برای ما ایجاد کند:

در واقع کد بالا یک فرمول مشخص است برای تولید یک عدد random که اگر در اینترنت جستجو کنید فرمول های دیگری نیز می‌توانید پیدا کنید:

مثال بالا برای سایت mozilla است با این تفاوت که در این مثال فقط می‌توانیم یک عدد را به عنوان بزرگترین عدد  به آن پاس کنیم و کوچکترین عدد از صفر در نظر گرفته می‌شود.

منتشرشده در جاوااسکریپت | برچسب‌شده | دیدگاه‌تان را بنویسید:

تفاوت Undefined و Null در جاوااسکریپت

یک از سوالات متداول در جاوا اسکریپت تفاوت Undefined و Null است.

undefined به معنای این است که یک متغیر تعریف شده ولی هنوز مقداری به آن تخصیص داده نشده است در حالیکه Null در واقع یک مقدار است که به یک متغیر می توان اختصاص داد.Null زمانیکه به یک متغیر تخصیص داده می شود به این معنی است که متغیر مقداری ندارد.

تفاوت بعدی در جنس یا (type) این دو هست.

تایپ undefined همان undefined است ولی Null یک object است.

هر زمان متغیری را تعریف کنید ولی به آن مقداری تخصیص ندهید به صورت پیشفرض undefined خواهد بود و هیچ زمان Null نخواهد شد.

منتشرشده در جاوااسکریپت, ویکی | دیدگاه‌تان را بنویسید:

Variable shadowing چیست؟

Variable shadowing زمانی اتفاق می‌افتد که یک متغیر داخل یک scope با نام مشابه متغیری دیگر در scope بالا تر تعریف شود.


در صورت اجرای کد بالا با خطا مواجه نخواهیم شد.
در مثال بالا varOne هم در scope داخلی و هم scope خارجی تعریف شده است.

منتشرشده در ویکی | دیدگاه‌تان را بنویسید:

lexical scoping چیست؟

Lexical scoping یک قرارداد است که به توسط بسیاری از زبان های برنامه نویسی در رابطه با محدوده دسترسی به یک متغیر رعایت می‌شود.
Lexical scoping مشخص می‌کند که یک متغیر فقط می‌تواند داخل بلاکی که تعریف شده است صدا زده شود و مورد استفاده قرار گیرد.

هر بلاک کد با } شروع با { به اتمام می‌رسد.

}

some codes

{

متضاد lexical scoping که در بالا توضیح دادیم Dynamic scoping هست که در آن متغیرها در هر بلاکی تعریف شوند در خارج از بلاک هم در دسترس هستند.به عبارتی متغیر ها به صورت عمومی تعریف می‌شوند.

یکی از زبانهایی که از این قرارداد پیروی می‌کند جاوا اسکریپت است.

منتشرشده در ویکی | برچسب‌شده | دیدگاه‌تان را بنویسید: