آنوفل دنیای برنامه نویسی
118 subscribers
253 photos
272 links
آنوفل | Anophel: دنیای بی ‌پایان امکانات برای برنامه‌ نویسان

website: https://anophel.com

پشتیبانی :
@anophel_support

#anophel #آنوفل #برنامه_نویسی
Download Telegram
بهترین الگوریتم مرتب سازی جاوا اسکریپت برای پروژه ها

🔺 مرتب‌سازی داده‌ها کاربردهای عملی زیادی در برنامه‌های کاربردی مدرن دارد، مانند سازمان‌دهی فهرستی از نام‌ها، جستجوی یک آیتم خاص در پایگاه داده (دیتابیس) یا بهینه‌سازی عملکرد برنامه‌های کاربردی وب.الگوریتم های مرتب سازی محبوب زیادی وجود دارد که هر کدام...

🌐 : بهترین الگوریتم مرتب سازی جاوا اسکریپت برای پروژه ها

#javascript #js #جاوااسکریپت #جاوا_اسکریپت
تایپ اسکریپت در مقابل جاوا اسکریپت : کدام را انتخاب کنیم؟

🔺 در حوزه توسعه نرم افزار، انتخاب زبان برنامه نویسی صحیح می تواند به طور قابل توجهی بر عملکرد، موفقیت، قابلیت نگهداری و کارایی نرم افزار/برنامه تاثیر بگذارد. جاوا اسکریپت (JavaScript) و تایپ اسکریپت (TypeScript) دو زبان برنامه نویسی اصلی در توسعه وب هس...

🌐 : تایپ اسکریپت در مقابل جاوا اسکریپت : کدام را انتخاب کنیم؟


#تایپ_اسکریپت #جاوااسکریپت
تو جاوا اسکریپت ما سه نوع کد داریم :
1. کد Synchronous
2. کد macrotask
3. کد Microtask

نکته کلیدی سوال این سه مورد هستند.
در اولی که پیش فرض جاوااسکریپت هست کد لاین به لاین اجرا می شود و تا لاین قبلی تمام نشد لاین جدید اجرا نمیشه.

دومی : بعد از اجرای کد های Synchronou و قبل میکروتسک ها اجرا می شود مثل setTimeout و setInterval و ..
.

سومی :این بخش نیز بعد از اجرای کد های ماکروتسک اجرا می شوند. مثلا : promiseها.

بررسی مثال:
بخش Synchronous :

console.log(1); بلافاصله اجرا می‌شود و مقدار 1 در کنسول چاپ می‌شود
setTimeout یک ماکروتسک تعریف می‌کند، اما چون setTimeout تنها تنظیم کننده‌ی تاخیر است، این عملیات به تعویق می‌افتد. پس setTimeout هنوز چیزی چاپ نمی‌کند

console.log(2); نیز بلافاصله اجرا می‌شود و مقدار 2 در کنسول چاپ می‌شود

console.log(4) بلافاصله بعد از promise.then فراخوانی می‌شود و مقدار 4 در کنسول چاپ می‌شود

پس از اتمام اجرای کدهایSynchrono نیز setTimeout که یک ماکروتسک است، اجرا می‌شود.ابتدا مقدار "timerStart" را در کنسول چاپ می‌کند.سپس success فراخوانی می‌شود که باعث می‌شود promise به حالت fulfilled برسد و یک میکروتسک (یعنی promise.then) به صف میکروتسک‌ها اضافه شود.سپس مقدار "timerEnd" را چاپ می‌کند.

در‌اخرم میکروتسک اجرا می شود. success

خروجی نهایی :
1
2
4
timerStart
timerEnd
success

آنوفل

#javascript #js #نکته #جاوااسکریپت
بلوک کد های try catch تو جاوااسکریپت بنظرم خیلی طولانی هست ولی جاش می تونید از Safe Assignment Operator که به اکمااسکریپت اضافه شده استفاده کنید، این اپراتور به صورت "=?" ، این باعث میشه کد هاتون تمیز تر و error handling خوبی داشته باشید.

آنوفل دنیای برنامه نویسی

#جاوااسکریپت #جاوا_اسکریپت #Js #code #javascript
💠امروز میخوام یک ابزار جدید معرفی کنم به اسم Neu.js.

این یک کتابخانه جاوا اسکریپت سبک و اوپن سورس است که برای توسعه ساده فرانت اند طراحی شده است که بر سهولت استفاده و حداقل کد تأکید دارد.


🔹خب Nue.js به عنوان یک ابزار جدید در حوزه توسعه فرانت اند ظاهر شده است که رویکردی حداقلی برای ساخت اینترفیس های وب ارائه می دهد. البته این به دلیل ماهیت سبک خود متمایز است‌.

🔹زمانی که فشرده می شود تنها 2.3kb حجم دارد و نسبت به فریمورک های مثل Vue.js، React.js یا Svelte آبستکرشن با همون انتزاعات کمتری دارد. این کتابخانه بر طراحی وب بهبود معنایی و پیشرونده تمرکز دارد و برای توسعه دهندگان UI که طراحی تعامل، دسترسی و تجربه کاربر را در اولویت قرار می دهند، هدف قرار گرفته است.

🔹همچنین Nue.js بخشی از یک اکوسیستم پیش‌بینی‌شده است که شامل پروژه‌های آینده مانند Nue CSS، Nue MVC، Nue UI، Nuemark و Nuekit است که هدف آن ارائه یک جایگزین جامع برای راه‌حل‌های موجود مانند Vite، Next.js و Astro است.

🔹سادگی این فریمورک به توسعه دهندگان اجازه می دهد تا به میزان قابل توجهی کد کمتری بنویسند و شامل ویژگی هایی برای توسعه آسان و یک زنجیره ابزار ساده برای SSR و تولید کامپوننت بدون نیاز به ابزارهای باندلر پیچیده است.

آنوفل | Anophel

#nuejs #frontend #js #javascript #جاوااسکریپت
Please open Telegram to view this post
VIEW IN TELEGRAM
در جاوااسکریپت، مفاهیم "Execution Context"و "Execution Stack"و "Variable Object" و "Scope Chain" به ترتیب با مکانیزم‌های اجرایی و مدیریت متغیرها و توابع در کد ارتباط دارند.

خب این مفاهیم برای درک چگونگی اجرای کدهای جاوااسکریپت و مدیریت فضای حافظه اهمیت دارند. بیاید بیشتر باهاش آشنا شیم:


1. Execution Context:
این مفهوم به معنای فضاییه که کدهای جاوااسکریپت توش اجرا میشن. وقتی یه اسکریپت یا تابع اجرا میشه، یه "بافت اجرایی" براش ساخته میشه که مرورگر بهش نیاز داره تا کد رو درست اجرا کنه.

سه نوع کلی داریم:
- Global Execution Context: وقتی کد برای اولین بار اجرا میشه، این بافت ساخته میشه و همه کدهای خارج از توابع توش قرار میگیرن.
- Function Execution Context: هر بار که یه تابع فراخوانی میشه، یه بافت اجرایی جدید برای اون ساخته میشه.
- Eval Execution Context: وقتی کدها از طریق تابع eval() اجرا میشن، یه بافت اجرایی خاص برای اون ساخته میشه.

هر Execution Context سه بخش اصلی داره:
1.Variable Object: جایی که متغیرها و توابع تعریف‌شده توش ذخیره میشن.
2. Scope Chain: برای دسترسی به متغیرها و توابع در دامنه‌های دیگه استفاده میشه.
3. this: به آبجکت فعلی یا محیط اجرایی خاص در زمان اجرا اشاره داره.

2. Execution Stack:
اینو بهش Call Stack هم میگن. یه جور ساختار داده‌ای از نوع استک (LIFO: Last In, First Out) که بافت‌های اجرایی رو مدیریت میکنه. هر بار که یه تابع فراخوانی میشه، بافت اجرایی اون تابع به استک اضافه میشه و بعد از اتمام اجرا، از استک خارج میشه.

3. Variable Object:
فضایی که تو هر بافت اجرایی ایجاد میشه و متغیرها، توابع و پارامترهای مربوط به اون رو ذخیره میکنه.

دو نوع اصلی داره:
- Global Execution Context: آبجکت متغیر به عنوان Global Object عمل میکنه (معمولاً window تو مرورگر).
- Function Execution Context: شامل پارامترهای تابع، متغیرهای داخل تابع و توابع درونی اون.

۴. Scope Chain:
مکانیزمیه که جاوااسکریپت برای دسترسی به متغیرها و توابع ازش استفاده میکنه. هر بافت اجرایی یه زنجیره‌ای از دامنه‌ها داره که تو اون به دنبال متغیرها و توابع میگرده. وقتی جاوااسکریپت دنبال مقدار یه متغیره، اول از دامنه فعلی شروع میکنه و اگه اونجا پیدا نکرد، میره سراغ دامنه‌های بالاتر (مثلاً دامنه گلوبال).

این مفهوم اجازه میده که متغیرها و توابع تو جاوااسکریپت به طور سلسله‌ مراتبی و براساس مکان تعریفشون تو کد دسترسی‌پذیر باشن.


ANOPHEL I آنوفل

#جاوااسکریپت #javascript #stack #react #vue