متد
▎نحوه استفاده از متد
ساختار کلی متد
• array: آرایهای که میخواهید بر روی آن فیلتر کنید.
• callback: تابعی که برای هر عنصر آرایه فراخوانی میشود. این تابع باید یک مقدار بولی (true یا false) برگرداند.
• element: عنصر فعلی آرایه.
• index (اختیاری): ایندکس عنصر فعلی.
• array (اختیاری): خود آرایهای که بر روی آن فیلتر انجام میشود.
• thisArg (اختیاری): مقداری که به عنوان
▎مثال
فرض کنید ما یک آرایه از اعداد داریم و میخواهیم فقط اعداد زوج را فیلتر کنیم:
▎استفاده از Arrow Function
میتوانید از Arrow Function نیز استفاده کنید تا کد شما کوتاهتر و خواناتر باشد:
▎نتیجهگیری
متد
filter در جاوااسکریپت یکی از متدهای آرایهها (Arrays) است که برای فیلتر کردن عناصر یک آرایه بر اساس یک شرط خاص استفاده میشود. این متد یک آرایه جدید را برمیگرداند که شامل عناصری است که شرط مشخص شده را برآورده میکنند.▎نحوه استفاده از متد
filterساختار کلی متد
filter به صورت زیر است:let newArray = array.filter(callback(element[, index[, array]])[, thisArg]);
• array: آرایهای که میخواهید بر روی آن فیلتر کنید.
• callback: تابعی که برای هر عنصر آرایه فراخوانی میشود. این تابع باید یک مقدار بولی (true یا false) برگرداند.
• element: عنصر فعلی آرایه.
• index (اختیاری): ایندکس عنصر فعلی.
• array (اختیاری): خود آرایهای که بر روی آن فیلتر انجام میشود.
• thisArg (اختیاری): مقداری که به عنوان
this در تابع callback استفاده میشود.▎مثال
فرض کنید ما یک آرایه از اعداد داریم و میخواهیم فقط اعداد زوج را فیلتر کنیم:
let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
let evenNumbers = numbers.filter(function(number) {
return number % 2 === 0; // شرط برای پیدا کردن اعداد زوج
});
console.log(evenNumbers); // خروجی: [2, 4, 6, 8, 10]
▎استفاده از Arrow Function
میتوانید از Arrow Function نیز استفاده کنید تا کد شما کوتاهتر و خواناتر باشد:
let evenNumbers = numbers.filter(number => number % 2 === 0);
console.log(evenNumbers); // خروجی: [2, 4, 6, 8, 10]
▎نتیجهگیری
متد
filter ابزاری بسیار مفید برای کار با آرایهها در جاوااسکریپت است و به شما این امکان را میدهد که به سادگی عناصری را که شرایط خاصی را برآورده میکنند، جدا کنید.👍1
Codespian | کدسپین
متد filter در جاوااسکریپت یکی از متدهای آرایهها (Arrays) است که برای فیلتر کردن عناصر یک آرایه بر اساس یک شرط خاص استفاده میشود. این متد یک آرایه جدید را برمیگرداند که شامل عناصری است که شرط مشخص شده را برآورده میکنند. ▎نحوه استفاده از متد filter ساختار…
برای یادگیری و درک بهتر متد
https://www.w3schools.com/jsref/jsref_filter.asp
filter مقاله را مطالعه کنید 💯https://www.w3schools.com/jsref/jsref_filter.asp
W3Schools
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
👍1
متد
▎نحوه استفاده
ساختار کلی متد
•
•
•
▎مثال
در زیر یک مثال ساده از استفاده از متد
▎استفاده از Arrow Function
میتوانید از Arrow Function نیز برای نوشتن کد خود استفاده کنید که کد را مختصرتر میکند:
▎نکات مهم
1. متد
2. اگر تابعی که به
3. طول آرایه جدید همیشه برابر با طول آرایه اصلی خواهد بود.
▎نتیجهگیری
متد
map در جاوااسکریپت یکی از متدهای آرایه است که به شما اجازه میدهد تا یک تابع را بر روی هر عنصر یک آرایه اعمال کنید و یک آرایه جدید با نتایج آن تابع ایجاد کنید. این متد به صورت غیرمستقیم تغییراتی در آرایه اصلی ایجاد نمیکند و آرایه جدیدی را برمیگرداند.▎نحوه استفاده
ساختار کلی متد
map به شکل زیر است:let newArray = array.map(function(element, index, array) {
// عملیاتی که میخواهید بر روی هر عنصر انجام دهید
return newElement; // عنصر جدیدی که میخواهید به آرایه جدید اضافه کنید
});
•
element: عنصر فعلی که در حال پردازش است.•
index: ایندکس (شاخص) عنصر فعلی (اختیاری).•
array: آرایه اصلی (اختیاری).▎مثال
در زیر یک مثال ساده از استفاده از متد
map آورده شده است:const numbers = [1, 2, 3, 4, 5];
// استفاده از متد map برای دو برابر کردن هر عدد
const doubled = numbers.map(function(num) {
return num * 2;
});
console.log(doubled); // خروجی: [2, 4, 6, 8, 10]
▎استفاده از Arrow Function
میتوانید از Arrow Function نیز برای نوشتن کد خود استفاده کنید که کد را مختصرتر میکند:
const numbers = [1, 2, 3, 4, 5];
// استفاده از Arrow Function
const doubled = numbers.map(num => num * 2);
console.log(doubled); // خروجی: [2, 4, 6, 8, 10]
▎نکات مهم
1. متد
map یک آرایه جدید را برمیگرداند و آرایه اصلی را تغییر نمیدهد.2. اگر تابعی که به
map داده میشود، undefined برگرداند، آن عنصر در آرایه جدید به عنوان undefined قرار میگیرد.3. طول آرایه جدید همیشه برابر با طول آرایه اصلی خواهد بود.
▎نتیجهگیری
متد
map ابزاری قدرتمند و مفید برای کار با آرایهها در جاوااسکریپت است و میتواند به شما کمک کند تا به سادگی و به صورت تابعی، تغییرات دلخواه را بر روی عناصر یک آرایه اعمال کنید.
Codespian | کدسپین
متد map در جاوااسکریپت یکی از متدهای آرایه است که به شما اجازه میدهد تا یک تابع را بر روی هر عنصر یک آرایه اعمال کنید و یک آرایه جدید با نتایج آن تابع ایجاد کنید. این متد به صورت غیرمستقیم تغییراتی در آرایه اصلی ایجاد نمیکند و آرایه جدیدی را برمیگرداند.…
W3Schools
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
متد
▎نحوه استفاده
ساختار کلی متد
•
•
▎مثالها
▎مثال 1: استفاده ساده
در این مثال، رشته
▎مثال 2: استفاده از کاراکترهای دیگر
در اینجا، رشته
▎مثال 3: طول هدف کمتر یا برابر با طول فعلی
اگر طول هدف کمتر یا برابر با طول فعلی رشته باشد، متد
▎نکات مهم
1. اگر
2. اگر
▎نتیجهگیری
متد
padStart در جاوااسکریپت به شما اجازه میدهد تا یک رشته را به طول مشخصی برسانید و اگر طول رشته کوتاهتر از طول هدف باشد، با استفاده از یک کاراکتر مشخص (یا کاراکترهای پیشفرض) در ابتدای آن پر کنید. این متد برای فرمت کردن رشتهها و ایجاد نمایشهای زیباتر بسیار مفید است.▎نحوه استفاده
ساختار کلی متد
padStart به شکل زیر است:string.padStart(targetLength, padString);
•
targetLength: طول نهایی رشتهای که میخواهید به آن برسید.•
padString: رشتهای که میخواهید برای پر کردن در ابتدای رشته اصلی استفاده کنید (اختیاری). اگر این پارامتر ارائه نشود، از کاراکتر پیشفرض (که معمولاً یک فضای خالی است) استفاده میشود.▎مثالها
▎مثال 1: استفاده ساده
let str = "5";
let paddedStr = str.padStart(2, '0');
console.log(paddedStr); // خروجی: "05"
در این مثال، رشته
"5" به طول ۲ رسیده و با کاراکتر '0' پر شده است.▎مثال 2: استفاده از کاراکترهای دیگر
let str = "123";
let paddedStr = str.padStart(6, '*');
console.log(paddedStr); // خروجی: "***123"
در اینجا، رشته
"123" به طول ۶ رسیده و با کاراکتر '*' پر شده است.▎مثال 3: طول هدف کمتر یا برابر با طول فعلی
let str = "hello";
let paddedStr = str.padStart(3, '0');
console.log(paddedStr); // خروجی: "hello"
اگر طول هدف کمتر یا برابر با طول فعلی رشته باشد، متد
padStart تغییری در رشته ایجاد نمیکند.▎نکات مهم
1. اگر
padString طولش بیشتر از طول مورد نیاز باشد، فقط قسمت چپ آن به اندازه کافی برای پر کردن استفاده میشود.let str = "42";
let paddedStr = str.padStart(5, 'abc');
console.log(paddedStr); // خروجی: "ab42"
2. اگر
targetLength یک عدد منفی یا صفر باشد، متد padStart رشته اصلی را برمیگرداند.▎نتیجهگیری
متد
padStart ابزاری مفید برای فرمت کردن و پر کردن رشتهها است که میتواند به شما کمک کند تا دادههای خود را به شکل زیباتر و منظمتری نمایش دهید.
Codespian | کدسپین
متد padStart در جاوااسکریپت به شما اجازه میدهد تا یک رشته را به طول مشخصی برسانید و اگر طول رشته کوتاهتر از طول هدف باشد، با استفاده از یک کاراکتر مشخص (یا کاراکترهای پیشفرض) در ابتدای آن پر کنید. این متد برای فرمت کردن رشتهها و ایجاد نمایشهای زیباتر…
برای یادگیری و درک بهتر متد
https://www.w3schools.com/jsref/jsref_string_padstart.asp
padStart مقاله را مطالعه کنید 💯https://www.w3schools.com/jsref/jsref_string_padstart.asp
W3Schools
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
تو این پست میخوایم راجب یک قابلیت خیلی فوق العاده که تایپ اسکریپت بوجود اورده صحبت کنیم ، متادیتا !
متادیتا (Metadata) در TypeScript مثل یادداشتهای نامرئی روی کد هامونه که به سیستممون میگه چطور با اجزای مختلف برنامه رفتار کنه. این ویژگی، به خصوص وقتی با Decoratorها ترکیب میشه، میتونه برنامهنویسی رو حرفهایتر و شیرین تر کنه !
چرا متادیتا مهمه؟
• انعطافپذیری: بدون تغییر منطق اصلی کد، رفتارش رو اصلاح میکنه.
• کاهش کد تکراری: مثلاً برای اعتبارسنجی، دیباگ یا لاگینگ.
• قابلیت استفاده در فریمورکها: مثل NestJS یا Angular که از متادیتا برای Routeها و Dependency Injection استفاده میشه .
• ساخت کتابخانه/فریمورک
• اعتبارسنجی خودکار دادهها
• پیادهسازی AOP (برنامهنویسی جنبهگرا)
اگه میخوای بیشتر راجبش بدونی راجب reflect metadata api بخون.
متادیتا (Metadata) در TypeScript مثل یادداشتهای نامرئی روی کد هامونه که به سیستممون میگه چطور با اجزای مختلف برنامه رفتار کنه. این ویژگی، به خصوص وقتی با Decoratorها ترکیب میشه، میتونه برنامهنویسی رو حرفهایتر و شیرین تر کنه !
چرا متادیتا مهمه؟
• انعطافپذیری: بدون تغییر منطق اصلی کد، رفتارش رو اصلاح میکنه.
• کاهش کد تکراری: مثلاً برای اعتبارسنجی، دیباگ یا لاگینگ.
• قابلیت استفاده در فریمورکها: مثل NestJS یا Angular که از متادیتا برای Routeها و Dependency Injection استفاده میشه .
چه موقع از متادیتا استفاده کنیم؟ • ساخت کتابخانه/فریمورک
• اعتبارسنجی خودکار دادهها
• پیادهسازی AOP (برنامهنویسی جنبهگرا)
اگه میخوای بیشتر راجبش بدونی راجب reflect metadata api بخون.
👍1
در جاوا اسکریپت، دادهها به دو دسته اصلی تقسیم میشوند: دادههای اولیه (Primitive) و دادههای غیر اولیه (Non-Primitive).
▎1. دادههای اولیه (Primitive Data Types)
دادههای اولیه شامل نوعهایی هستند که به صورت مستقیم مقدار را ذخیره میکنند و غیرقابل تغییر (immutable) هستند. در جاوا اسکریپت، انواع دادههای اولیه عبارتند از:
• Number: برای ذخیره اعداد (مثلاً 10، 15.5).
• String: برای ذخیره رشتهها (مثلاً "Hello", 'World').
• Boolean: برای ذخیره مقادیر منطقی (true یا false).
• Undefined: وقتی که یک متغیر تعریف شده باشد اما مقداری به آن اختصاص داده نشده باشد.
• Null: نمایانگر عدم وجود مقدار است.
• Symbol: نوعی از داده که برای ایجاد شناسههای منحصر به فرد استفاده میشود (از ES6 به بعد).
• BigInt: برای کار با اعداد بزرگتر از محدوده Number.
▎مثال:
▎2. دادههای غیر اولیه (Non-Primitive Data Types)
دادههای غیر اولیه شامل نوعهایی هستند که میتوانند شامل مجموعهای از مقادیر باشند و قابل تغییر (mutable) هستند. در جاوا اسکریپت، انواع دادههای غیر اولیه عبارتند از:
• Object: برای ذخیره مجموعهای از کلید-مقدارها. میتواند شامل انواع مختلف دادهها باشد.
• Array: نوع خاصی از شیء که برای ذخیره مجموعهای از مقادیر استفاده میشود.
• Function: توابع نیز نوعی از اشیاء هستند.
▎مثال:
▎جمعبندی
• دادههای اولیه به صورت مستقیم مقدار را نگه میدارند و غیرقابل تغییر هستند.
• دادههای غیر اولیه میتوانند شامل مجموعهای از مقادیر باشند و قابل تغییر هستند.
این دو دسته اصلی دادهها در جاوا اسکریپت به شما کمک میکنند تا برنامههای خود را به طور مؤثرتر مدیریت کنید.
▎1. دادههای اولیه (Primitive Data Types)
دادههای اولیه شامل نوعهایی هستند که به صورت مستقیم مقدار را ذخیره میکنند و غیرقابل تغییر (immutable) هستند. در جاوا اسکریپت، انواع دادههای اولیه عبارتند از:
• Number: برای ذخیره اعداد (مثلاً 10، 15.5).
• String: برای ذخیره رشتهها (مثلاً "Hello", 'World').
• Boolean: برای ذخیره مقادیر منطقی (true یا false).
• Undefined: وقتی که یک متغیر تعریف شده باشد اما مقداری به آن اختصاص داده نشده باشد.
• Null: نمایانگر عدم وجود مقدار است.
• Symbol: نوعی از داده که برای ایجاد شناسههای منحصر به فرد استفاده میشود (از ES6 به بعد).
• BigInt: برای کار با اعداد بزرگتر از محدوده Number.
▎مثال:
let num = 10; // Number
let str = "Hello"; // String
let isTrue = true; // Boolean
let notDefined; // Undefined
let emptyValue = null; // Null
let uniqueSymbol = Symbol('unique'); // Symbol
let bigIntValue = BigInt(9007199254740991); // BigInt
▎2. دادههای غیر اولیه (Non-Primitive Data Types)
دادههای غیر اولیه شامل نوعهایی هستند که میتوانند شامل مجموعهای از مقادیر باشند و قابل تغییر (mutable) هستند. در جاوا اسکریپت، انواع دادههای غیر اولیه عبارتند از:
• Object: برای ذخیره مجموعهای از کلید-مقدارها. میتواند شامل انواع مختلف دادهها باشد.
• Array: نوع خاصی از شیء که برای ذخیره مجموعهای از مقادیر استفاده میشود.
• Function: توابع نیز نوعی از اشیاء هستند.
▎مثال:
// Object
let person = {
name: "Ali",
age: 30,
isStudent: false
};
// Array
let fruits = ["apple", "banana", "cherry"];
// Function
function greet() {
console.log("Hello!");
}
▎جمعبندی
• دادههای اولیه به صورت مستقیم مقدار را نگه میدارند و غیرقابل تغییر هستند.
• دادههای غیر اولیه میتوانند شامل مجموعهای از مقادیر باشند و قابل تغییر هستند.
این دو دسته اصلی دادهها در جاوا اسکریپت به شما کمک میکنند تا برنامههای خود را به طور مؤثرتر مدیریت کنید.
❤1👍1
Codespian | کدسپین
در جاوا اسکریپت، دادهها به دو دسته اصلی تقسیم میشوند: دادههای اولیه (Primitive) و دادههای غیر اولیه (Non-Primitive). ▎1. دادههای اولیه (Primitive Data Types) دادههای اولیه شامل نوعهایی هستند که به صورت مستقیم مقدار را ذخیره میکنند و غیرقابل تغییر…
برای یادگیری و درک بهتر داده های primitive و non-primitive مقاله را مطالعه کنید 💯
https://dev.to/js_catch/02-primitive-and-non-primitive-data-types-in-javanoscript-2dhd
https://dev.to/js_catch/02-primitive-and-non-primitive-data-types-in-javanoscript-2dhd
DEV Community
02 - Primitive and Non-Primitive Data Types in Javanoscript
Data types in js is broadly classified into 2 types: Primitive types : Type Denoscript...
Codespian | کدسپین
در جاوا اسکریپت، دادهها به دو دسته اصلی تقسیم میشوند: دادههای اولیه (Primitive) و دادههای غیر اولیه (Non-Primitive). ▎1. دادههای اولیه (Primitive Data Types) دادههای اولیه شامل نوعهایی هستند که به صورت مستقیم مقدار را ذخیره میکنند و غیرقابل تغییر…
برای یادگیری و درک بهتر داده های primitive و non-primitive مقاله را مطالعه کنید 💯
https://medium.com/@junshengpierre/javanoscript-primitive-values-object-references-361cfc1cbfb0
https://medium.com/@junshengpierre/javanoscript-primitive-values-object-references-361cfc1cbfb0
Medium
JavaScript: Primitive Values & Object References
JavaScript provides different data types to hold different types of values. There are two types of data types in JavaScript:
در جاوا اسکریپت، Template Literals (یا الگوهای متنی) یک ویژگی جدید از ES6 (ECMAScript 2015) هستند که به شما اجازه میدهند رشتهها را به شیوهای سادهتر و خواناتر بسازید. این ویژگی به شما امکان میدهد تا:
1. رشتهها را در چند خط بنویسید.
2. متغیرها و عبارات را به راحتی درون رشتهها قرار دهید.
3. از توابع و عبارات پیچیده درون رشتهها استفاده کنید.
▎نحوه استفاده از Template Literals
برای استفاده از Template Literals، به جای علامتهای نقل قول معمولی (
▎1. چند خطی بودن رشتهها
با استفاده از Template Literals، میتوانید رشتهها را در چند خط بنویسید:
▎2. قرار دادن متغیرها و عبارات
شما میتوانید متغیرها و عبارات را با استفاده از
▎3. استفاده از توابع و عبارات
شما میتوانید توابع و عبارات پیچیده را نیز درون Template Literals استفاده کنید:
▎مزایای Template Literals
• خوانایی بهتر: با استفاده از Template Literals، کد شما خواناتر و مرتبتر خواهد بود.
• کاهش نیاز به کاراکترهای فرار: در مقایسه با رشتههای معمولی، نیاز به کاراکترهای فرار (مانند
• استفاده آسان از عبارات: میتوانید به راحتی متغیرها و عبارات را درون رشتهها قرار دهید.
▎جمعبندی
Template Literals یک ویژگی قدرتمند در جاوا اسکریپت هستند که به شما امکان میدهند تا رشتهها را به شیوهای سادهتر و مؤثرتر بسازید. با استفاده از بکتیکها، شما میتوانید رشتههای چند خطی ایجاد کنید و به راحتی متغیرها و عبارات را درون آنها قرار دهید.
1. رشتهها را در چند خط بنویسید.
2. متغیرها و عبارات را به راحتی درون رشتهها قرار دهید.
3. از توابع و عبارات پیچیده درون رشتهها استفاده کنید.
▎نحوه استفاده از Template Literals
برای استفاده از Template Literals، به جای علامتهای نقل قول معمولی (
' یا ") از بکتیکها ( `) استفاده میکنید.▎1. چند خطی بودن رشتهها
با استفاده از Template Literals، میتوانید رشتهها را در چند خط بنویسید:
const multiLineString = این یک رشته
در چند خط است
که با Template Literal نوشته شده است.;
console.log(multiLineString);
▎2. قرار دادن متغیرها و عبارات
شما میتوانید متغیرها و عبارات را با استفاده از
${} درون Template Literals قرار دهید:const name = "علی";
const age = 25;
const greeting = سلام، نام من ${name} است و من ${age} سال دارم.;
console.log(greeting);
▎3. استفاده از توابع و عبارات
شما میتوانید توابع و عبارات پیچیده را نیز درون Template Literals استفاده کنید:
const a = 5;
const b = 10;
const result = جمع ${a} و ${b} برابر است با ${a + b}.;
console.log(result);
▎مزایای Template Literals
• خوانایی بهتر: با استفاده از Template Literals، کد شما خواناتر و مرتبتر خواهد بود.
• کاهش نیاز به کاراکترهای فرار: در مقایسه با رشتههای معمولی، نیاز به کاراکترهای فرار (مانند
\n برای خط جدید) کمتر است.• استفاده آسان از عبارات: میتوانید به راحتی متغیرها و عبارات را درون رشتهها قرار دهید.
▎جمعبندی
Template Literals یک ویژگی قدرتمند در جاوا اسکریپت هستند که به شما امکان میدهند تا رشتهها را به شیوهای سادهتر و مؤثرتر بسازید. با استفاده از بکتیکها، شما میتوانید رشتههای چند خطی ایجاد کنید و به راحتی متغیرها و عبارات را درون آنها قرار دهید.
Codespian | کدسپین
در جاوا اسکریپت، Template Literals (یا الگوهای متنی) یک ویژگی جدید از ES6 (ECMAScript 2015) هستند که به شما اجازه میدهند رشتهها را به شیوهای سادهتر و خواناتر بسازید. این ویژگی به شما امکان میدهد تا: 1. رشتهها را در چند خط بنویسید. 2. متغیرها و عبارات…
برای یادگیری و درک بهتر temple literal مقاله را مطالعه کنید 💯
https://www.freecodecamp.org/news/template-literals-in-javanoscript/
https://www.freecodecamp.org/news/template-literals-in-javanoscript/
freeCodeCamp.org
How to Use Template Literals in JavaScript
Template literals are a feature in JavaScript that were introduced with ES6. They give you a more flexible and maintainable way of working with strings in JavaScript. By the end of this article, you will know how to use template literals. You will le...
در جاوااسکریپت، مانند هر زبان برنامهنویسی دیگری، رعایت بهترین شیوهها (Best Practices) و اجتناب از شیوههای بد (Bad Practices) میتواند به بهبود کیفیت کد، افزایش کارایی و تسهیل نگهداری آن کمک کند. در ادامه به برخی از بهترین و بدترین شیوهها در جاوااسکریپت اشاره میشود.
▎بهترین شیوهها (Best Practices)
1. استفاده از
• استفاده از
2. استفاده از Arrow Functions:
• توابع فلش (Arrow Functions) به شما کمک میکنند تا کد را مختصرتر و خواناتر بنویسید.
3. استفاده از Template Literals:
• برای ساخت رشتههای چند خطی و درج متغیرها، از Template Literals استفاده کنید.
4. مدیریت خطا:
• از بلوکهای
5. استفاده از ماژولها:
• کد خود را به ماژولهای کوچک تقسیم کنید تا نگهداری و استفاده مجدد از آن آسانتر شود.
6. نوشتن مستندات:
• مستندات مناسب برای کد خود بنویسید تا دیگران (و خودتان در آینده) بتوانند به راحتی بفهمند که کد چه کاری انجام میدهد.
7. استفاده از linting tools:
• ابزارهایی مانند ESLint را برای شناسایی و اصلاح مشکلات کدنویسی استفاده کنید.
▎شیوههای بد (Bad Practices)
1. استفاده از
• استفاده از
2. عدم مدیریت خطا:
• نادیده گرفتن مدیریت خطا میتواند باعث بروز مشکلات جدی در برنامه شود.
3. نوشتن کد غیرقابل فهم:
• استفاده از نامهای متغیر نامناسب یا نوشتن کد پیچیده بدون توضیحات میتواند فهم کد را دشوار کند.
4. استفاده بیش از حد از Globals:
• استفاده از متغیرهای جهانی میتواند منجر به تداخل نامها و مشکلات دیگر شود.
5. عدم استفاده از Strict Mode:
• عدم استفاده از "Strict Mode" میتواند منجر به بروز مشکلاتی در کد شود.
6. عدم استفاده از Async/Await:
• نادیده گرفتن الگوهای مدرن مدیریت Promise مانند
7. عدم توجه به عملکرد:
• نوشتن کد بدون توجه به کارایی و بهینهسازی میتواند منجر به کاهش سرعت برنامه شود.
▎جمعبندی
رعایت بهترین شیوهها و اجتناب از شیوههای بد در جاوااسکریپت به شما کمک میکند تا کدی تمیزتر، قابل نگهداریتر و کارآمدتر بنویسید. با پیروی از این نکات، میتوانید کیفیت پروژههای خود را بهبود ببخشید و تجربه بهتری در برنامهنویسی داشته باشید.
▎بهترین شیوهها (Best Practices)
1. استفاده از
const و let به جای var:• استفاده از
const برای متغیرهای غیرقابل تغییر و let برای متغیرهای قابل تغییر، به جلوگیری از مشکلات مربوط به دامنه متغیرها کمک میکند.const PI = 3.14; // ثابت
let age = 25; // متغیر قابل تغییر
2. استفاده از Arrow Functions:
• توابع فلش (Arrow Functions) به شما کمک میکنند تا کد را مختصرتر و خواناتر بنویسید.
const add = (a, b) => a + b;
3. استفاده از Template Literals:
• برای ساخت رشتههای چند خطی و درج متغیرها، از Template Literals استفاده کنید.
const name = "علی";
const greeting = سلام، ${name}!;
4. مدیریت خطا:
• از بلوکهای
try...catch برای مدیریت خطاها استفاده کنید تا از بروز مشکلات غیرمنتظره جلوگیری کنید. try {
// کد ممکن است خطا بدهد
} catch (error) {
console.error("خطا:", error);
}
5. استفاده از ماژولها:
• کد خود را به ماژولهای کوچک تقسیم کنید تا نگهداری و استفاده مجدد از آن آسانتر شود.
6. نوشتن مستندات:
• مستندات مناسب برای کد خود بنویسید تا دیگران (و خودتان در آینده) بتوانند به راحتی بفهمند که کد چه کاری انجام میدهد.
7. استفاده از linting tools:
• ابزارهایی مانند ESLint را برای شناسایی و اصلاح مشکلات کدنویسی استفاده کنید.
▎شیوههای بد (Bad Practices)
1. استفاده از
var:• استفاده از
var میتواند منجر به مشکلات دامنه و تداخل نامها شود.var x = 10; // بهتر است از let یا const استفاده شود
2. عدم مدیریت خطا:
• نادیده گرفتن مدیریت خطا میتواند باعث بروز مشکلات جدی در برنامه شود.
3. نوشتن کد غیرقابل فهم:
• استفاده از نامهای متغیر نامناسب یا نوشتن کد پیچیده بدون توضیحات میتواند فهم کد را دشوار کند.
4. استفاده بیش از حد از Globals:
• استفاده از متغیرهای جهانی میتواند منجر به تداخل نامها و مشکلات دیگر شود.
5. عدم استفاده از Strict Mode:
• عدم استفاده از "Strict Mode" میتواند منجر به بروز مشکلاتی در کد شود.
'use strict'; // استفاده از حالت سخت
6. عدم استفاده از Async/Await:
• نادیده گرفتن الگوهای مدرن مدیریت Promise مانند
async/await میتواند کد را پیچیدهتر کند. async function fetchData() {
const response = await fetch(url);
const data = await response.json();
return data;
}
7. عدم توجه به عملکرد:
• نوشتن کد بدون توجه به کارایی و بهینهسازی میتواند منجر به کاهش سرعت برنامه شود.
▎جمعبندی
رعایت بهترین شیوهها و اجتناب از شیوههای بد در جاوااسکریپت به شما کمک میکند تا کدی تمیزتر، قابل نگهداریتر و کارآمدتر بنویسید. با پیروی از این نکات، میتوانید کیفیت پروژههای خود را بهبود ببخشید و تجربه بهتری در برنامهنویسی داشته باشید.
Codespian | کدسپین
در جاوااسکریپت، مانند هر زبان برنامهنویسی دیگری، رعایت بهترین شیوهها (Best Practices) و اجتناب از شیوههای بد (Bad Practices) میتواند به بهبود کیفیت کد، افزایش کارایی و تسهیل نگهداری آن کمک کند. در ادامه به برخی از بهترین و بدترین شیوهها در جاوااسکریپت…
برای یادگیری و درک بهتر Best Practice مقاله را مطالعه کنید 💯
https://code.tutsplus.com/tutorials/24-javanoscript-best-practices-for-beginners--net-5399
https://code.tutsplus.com/tutorials/24-javanoscript-best-practices-for-beginners--net-5399
Code Envato Tuts+
30 JavaScript Best Practices for Beginners
This week, we'll look at some of the best practices for coding in JavaScript!
Codespian | کدسپین
در جاوااسکریپت، مانند هر زبان برنامهنویسی دیگری، رعایت بهترین شیوهها (Best Practices) و اجتناب از شیوههای بد (Bad Practices) میتواند به بهبود کیفیت کد، افزایش کارایی و تسهیل نگهداری آن کمک کند. در ادامه به برخی از بهترین و بدترین شیوهها در جاوااسکریپت…
برای یادگیری و درک بهتر Best Practice مقاله را مطالعه کنید 💯
https://medium.com/before-semicolon/50-javanoscript-best-practice-rules-to-write-better-code-86ce731311d7
https://medium.com/before-semicolon/50-javanoscript-best-practice-rules-to-write-better-code-86ce731311d7
Medium
50 JavaScript Best Practice Rules to Write Better Code
50 things I learned about coding in JavaScript you should know about to write better code.
Codespian | کدسپین
در جاوااسکریپت، مانند هر زبان برنامهنویسی دیگری، رعایت بهترین شیوهها (Best Practices) و اجتناب از شیوههای بد (Bad Practices) میتواند به بهبود کیفیت کد، افزایش کارایی و تسهیل نگهداری آن کمک کند. در ادامه به برخی از بهترین و بدترین شیوهها در جاوااسکریپت…
برای یادگیری و درک بهتر Best Practice مقاله را مطالعه کنید 💯
https://www.educative.io/blog/javanoscript-tips-simplify-code
https://www.educative.io/blog/javanoscript-tips-simplify-code
Educative
10 JavaScript tips: Best practices to simplify your code
JavaScript is a beloved and widespread language, but it can be unruly and hard to read. Today, we'll go over 15 tips to simplify your code and make dev life much easier.
در جاوااسکریپت، تابع
▎نحوه استفاده از
ساختار کلی استفاده از
▎مثال ساده
در این مثال،
▎نکات مهم
1. امنیت: استفاده از
2. عملکرد:
3. دامنه متغیرها: کدی که در
▎مثال پیشرفتهتر
▎نتیجهگیری
به طور کلی، اگرچه
eval() یک تابع داخلی است که به شما این امکان را میدهد که رشتههایی از کد جاوااسکریپت را اجرا کنید. به عبارت دیگر، eval() میتواند یک رشته را به عنوان کد جاوااسکریپت تفسیر و اجرا کند.▎نحوه استفاده از
eval()ساختار کلی استفاده از
eval() به شکل زیر است:eval(string);
▎مثال ساده
let x = 10;
let y = 20;
let result = eval("x + y");
console.log(result); // خروجی: 30
در این مثال،
eval() رشته "x + y" را تفسیر کرده و مقدار متغیرهای x و y را محاسبه میکند.▎نکات مهم
1. امنیت: استفاده از
eval() میتواند خطرناک باشد، زیرا اگر ورودی به آن از منبعی غیرقابل اعتماد باشد، ممکن است کد مخرب اجرا شود. بنابراین، استفاده از eval() معمولاً توصیه نمیشود.2. عملکرد:
eval() میتواند بر روی عملکرد برنامه تأثیر منفی بگذارد، زیرا موتور جاوااسکریپت نمیتواند بهینهسازیهای لازم را برای کدی که با eval() اجرا میشود انجام دهد.3. دامنه متغیرها: کدی که در
eval() اجرا میشود میتواند به متغیرهای محلی و سراسری دسترسی داشته باشد، که میتواند باعث بروز مشکلاتی در مدیریت دامنهها شود.▎مثال پیشرفتهتر
function calculate(expression) {
return eval(expression);
}
console.log(calculate("3 * (4 + 5)")); // خروجی: 27
▎نتیجهگیری
به طور کلی، اگرچه
eval() میتواند مفید باشد، اما باید با احتیاط استفاده شود و در صورت امکان، از روشهای دیگر برای اجرای کد یا ارزیابی عبارات استفاده کنید.👍1
Codespian | کدسپین
در جاوااسکریپت، تابع eval() یک تابع داخلی است که به شما این امکان را میدهد که رشتههایی از کد جاوااسکریپت را اجرا کنید. به عبارت دیگر، eval() میتواند یک رشته را به عنوان کد جاوااسکریپت تفسیر و اجرا کند. ▎نحوه استفاده از eval() ساختار کلی استفاده از eval()…
برای یادگیری و درک بهتر متد
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/eval
eval مقاله را مطالعه کنید 💯https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/eval
MDN Web Docs
eval() - JavaScript | MDN
The eval() function evaluates JavaScript code represented as a string and returns its completion value. The source is parsed as a noscript.
Codespian | کدسپین
در جاوااسکریپت، تابع eval() یک تابع داخلی است که به شما این امکان را میدهد که رشتههایی از کد جاوااسکریپت را اجرا کنید. به عبارت دیگر، eval() میتواند یک رشته را به عنوان کد جاوااسکریپت تفسیر و اجرا کند. ▎نحوه استفاده از eval() ساختار کلی استفاده از eval()…
برای یادگیری و درک بهتر متد
https://www.w3schools.com/jsref/jsref_eval.asp
eval مقاله را مطالعه کنید 💯https://www.w3schools.com/jsref/jsref_eval.asp
W3Schools
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.