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.
Codespian | کدسپین
در جاوااسکریپت، تابع eval() یک تابع داخلی است که به شما این امکان را میدهد که رشتههایی از کد جاوااسکریپت را اجرا کنید. به عبارت دیگر، eval() میتواند یک رشته را به عنوان کد جاوااسکریپت تفسیر و اجرا کند. ▎نحوه استفاده از eval() ساختار کلی استفاده از eval()…
برای یادگیری و درک بهتر متد
https://dev.to/amitkhonde/eval-is-evil-why-we-should-not-use-eval-in-javanoscript-1lbh
eval مقاله را مطالعه کنید 💯https://dev.to/amitkhonde/eval-is-evil-why-we-should-not-use-eval-in-javanoscript-1lbh
DEV Community
Eval is evil - Why we should not use eval in JavaScript
Eval is evil. - Some frustrated JavaScript engineer I recently read this quote on the internet and...
تابع IIFE (Immediately Invoked Function Expression) یک الگوی طراحی در جاوااسکریپت است که به شما این امکان را میدهد که یک تابع را به محض تعریف آن، بلافاصله اجرا کنید. این الگو معمولاً برای ایجاد یک دامنه محلی (scope) جدید و جلوگیری از آلودگی فضای نام جهانی (global namespace) استفاده میشود.
▎ساختار IIFE
ساختار کلی IIFE به صورت زیر است:
یا میتوانید از علامت
▎مثال ساده
در این مثال، یک IIFE تعریف میکنیم که یک پیام را در کنسول چاپ میکند:
▎استفاده از پارامترها
تابع IIFE میتواند پارامترهایی نیز داشته باشد:
در این مثال، نام "علی" به عنوان پارامتر به تابع ارسال میشود و در نتیجه پیام "سلام علی!" در کنسول چاپ میشود.
▎ایجاد دامنه محلی
تابع IIFE معمولاً برای ایجاد یک دامنه محلی استفاده میشود. به عنوان مثال:
▎نتیجهگیری
تابع IIFEها ابزارهای مفیدی برای مدیریت دامنهها و جلوگیری از آلودگی فضای نام جهانی هستند. با استفاده از آنها، میتوانید کد خود را سازماندهی کنید و متغیرهایی که فقط درون تابع نیاز دارید را به راحتی پنهان کنید.
▎ساختار IIFE
ساختار کلی IIFE به صورت زیر است:
(function() {
// کد شما در اینجا
})();یا میتوانید از علامت
+ یا ! برای اطمینان از اینکه تابع به عنوان یک عبارت تابع تفسیر میشود، استفاده کنید:!function() {
// کد شما در اینجا
}();▎مثال ساده
در این مثال، یک IIFE تعریف میکنیم که یک پیام را در کنسول چاپ میکند:
(function() {
console.log("این یک IIFE است!");
})();▎استفاده از پارامترها
تابع IIFE میتواند پارامترهایی نیز داشته باشد:
(function(name) {
console.log("سلام " + name + "!");
})("علی");در این مثال، نام "علی" به عنوان پارامتر به تابع ارسال میشود و در نتیجه پیام "سلام علی!" در کنسول چاپ میشود.
▎ایجاد دامنه محلی
تابع IIFE معمولاً برای ایجاد یک دامنه محلی استفاده میشود. به عنوان مثال:
var globalVar = "این یک متغیر جهانی است";
(function() {
var localVar = "این یک متغیر محلی است";
console.log(localVar); // خروجی: این یک متغیر محلی است
})();
console.log(globalVar); // خروجی: این یک متغیر جهانی است
// console.log(localVar); // این خط خطا خواهد داد، زیرا localVar در دسترس نیست
▎نتیجهگیری
تابع IIFEها ابزارهای مفیدی برای مدیریت دامنهها و جلوگیری از آلودگی فضای نام جهانی هستند. با استفاده از آنها، میتوانید کد خود را سازماندهی کنید و متغیرهایی که فقط درون تابع نیاز دارید را به راحتی پنهان کنید.
👍1
Codespian | کدسپین
تابع IIFE (Immediately Invoked Function Expression) یک الگوی طراحی در جاوااسکریپت است که به شما این امکان را میدهد که یک تابع را به محض تعریف آن، بلافاصله اجرا کنید. این الگو معمولاً برای ایجاد یک دامنه محلی (scope) جدید و جلوگیری از آلودگی فضای نام جهانی…
برای یادگیری و درک بهتر تابه IIFE مقاله را مطالعه کنید 💯
https://developer.mozilla.org/en-US/docs/Glossary/IIFE
https://developer.mozilla.org/en-US/docs/Glossary/IIFE
MDN Web Docs
IIFE - Glossary | MDN
An IIFE (Immediately Invoked Function Expression) is an idiom in which a JavaScript function runs as soon as it is defined. It is also known as a self-executing anonymous function. The name IIFE is promoted by Ben Alman in his blog.
متد
▎ساختار متد setInterval
• بخش callback: تابعی که قرار است به صورت مکرر اجرا شود.
• بخش delay: زمان تاخیر (در میلیثانیه) بین هر بار اجرای تابع.
• بخش ...args (اختیاری): آرگومانهایی که به تابع callback ارسال میشوند.
• بخش intervalID: شناسهای که برای متوقف کردن اجرای مکرر تابع استفاده میشود.
▎مثال ساده
در اینجا یک مثال ساده از استفاده از
در این مثال، تابع هر یک ثانیه یک بار اجرا میشود و مقدار
▎استفاده از Arrow Function
میتوانید از Arrow Function نیز برای نوشتن کد خود استفاده کنید:
▎متوقف کردن setInterval
برای متوقف کردن
▎نتیجهگیری
متد
setInterval در جاوااسکریپت برای اجرای یک تابع یا کد مشخص به صورت مکرر با یک فاصله زمانی معین استفاده میشود. این متد به شما این امکان را میدهد که یک تابع را در فواصل زمانی مشخص (به میلیثانیه) اجرا کنید.▎ساختار متد setInterval
let intervalID = setInterval(callback, delay[, ...args]);
• بخش callback: تابعی که قرار است به صورت مکرر اجرا شود.
• بخش delay: زمان تاخیر (در میلیثانیه) بین هر بار اجرای تابع.
• بخش ...args (اختیاری): آرگومانهایی که به تابع callback ارسال میشوند.
• بخش intervalID: شناسهای که برای متوقف کردن اجرای مکرر تابع استفاده میشود.
▎مثال ساده
در اینجا یک مثال ساده از استفاده از
setInterval آورده شده است:let count = 0;
const intervalID = setInterval(function() {
count++;
console.log(count);
// اگر شمارش به 5 رسید، متوقف کن
if (count === 5) {
clearInterval(intervalID);
}
}, 1000); // هر یک ثانیه (1000 میلیثانیه)
در این مثال، تابع هر یک ثانیه یک بار اجرا میشود و مقدار
count را افزایش میدهد. وقتی که count به ۵ رسید، با استفاده از clearInterval اجرای مکرر متوقف میشود.▎استفاده از Arrow Function
میتوانید از Arrow Function نیز برای نوشتن کد خود استفاده کنید:
let count = 0;
const intervalID = setInterval(() => {
count++;
console.log(count);
if (count === 5) {
clearInterval(intervalID);
}
}, 1000);
▎متوقف کردن setInterval
برای متوقف کردن
setInterval، باید از تابع clearInterval استفاده کنید و شناسهای که setInterval برمیگرداند را به آن پاس دهید:clearInterval(intervalID);
▎نتیجهگیری
متد
setInterval ابزاری قدرتمند برای اجرای کد در فواصل زمانی مشخص است. با استفاده از این متد، میتوانید کارهایی مانند بهروزرسانی صفحه، انیمیشنها و یا هر نوع عملیات مکرر دیگری را انجام دهید. توجه داشته باشید که استفاده نادرست از setInterval میتواند منجر به بارگذاری بیش از حد CPU شود، بنابراین همیشه باید اطمینان حاصل کنید که شرایطی برای متوقف کردن آن وجود دارد.👍1
Codespian | کدسپین
متد setInterval در جاوااسکریپت برای اجرای یک تابع یا کد مشخص به صورت مکرر با یک فاصله زمانی معین استفاده میشود. این متد به شما این امکان را میدهد که یک تابع را در فواصل زمانی مشخص (به میلیثانیه) اجرا کنید. ▎ساختار متد setInterval let intervalID = set…
برای یادگیری و درک بهتر متد
https://www.w3schools.com/jsref/met_win_setinterval.asp
setInterval مقاله را مطالعه کنید 💯https://www.w3schools.com/jsref/met_win_setinterval.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.