0
سبد خرید من 0 دوره
سبد خرید شما خالیست :(

جاوا اسکریپت ES6 چیست؟

ارمیا مزرعه
1403/09/11
1087
جاوا اسکریپت ES6 چیست؟

جاوا اسکریپت ES6 چیست؟ ES6 یا ECMAScript 2015 ششمین نسخه از استاندارد ECMAScript است که به طور قابل توجهی جاوا اسکریپت را متحول کرد. این نسخه با معرفی ویژگی‌های جدید و قدرتمند، نوشتن کدهای جاوا اسکریپت را کارآمدتر، خواناتر و انعطاف‌پذیرتر کرده است.

در مطلب پیشِ‌رو از مجله سبزلرن این بار قصد داریم به این پرسش که جاوا اسکریپت ES6 چیست، تاریخچه آن به کجا و کی بازمی‌گردد و ویژگی آن چه هستند، پاسخی کامل و جامع ارائه کنیم. پس با ما همراه باشید.

جاوا اسکریپت ES6 چیست

اکما اسکریپت و جاوا اسکریپت

اکما اسکریپت همانگونه در ECMA-262 بیان شده: یک استاندارد یا قانون کلی است که مشخص می‌کند یک زبان برنامه‌نویسی باید چه ویژگی‌هایی داشته باشد؛ از طرف دیگر جاوا اسکریپت یک زبان برنامه‌نویسی است که این استانداردها را اجرا می‌کند و به ما اجازه می‌دهد برنامه‌های کاربردی بنویسیم.

یک مثال ساده برای درک بهتر:

تصور کن اکما اسکریپت مثل یک دستورالعمل ساختن کیک باشه. این دستورالعمل بهت میگه که برای درست کردن یک کیک خوب، چه مواد اولیه‌ای نیاز داری و هر مرحله رو چطور باید انجام بدی. اما این دستورالعمل به تنهایی یه کیک درست نمیکنه!

جاوا اسکریپت مثل همون کیکی هست که با استفاده از دستورالعمل اکما اسکریپت درست شده. یعنی جاوا اسکریپت یک زبان برنامه‌نویسی همه‌منظوره هست که تمام قوانین و استانداردهایی که اکما اسکریپت تعریف کرده رو رعایت می‌کنه.

مثال ساده‌تر:

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

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

مقایسه اکما اسکریپت و جاوا اسکریپت

جاوا اسکریپت اکما اسکریپت
زبان برنامه نویسی است استاندارد یک زبان برنامه نویسی را مشخص می‌کند
پیاده سازی طبق قوانین ارائه شده ارائه قوانینی که باید رعایت شوند
دارای ویژگی‌های خاص و کاربردی محدود به ارائه قوانین و استانداردها

جاوا اسکریپت ES6 چیست

جاوا اسکریپت ES6 چیست؟

سوال اصلی اینجاست، جاوا اسکریپت ES6 چیست و چه تفاوتی با جاوا اسکریپت معمولی دارد؟ ES6 یا ECMAScript 2015، استانداردی است که نوشتن کدهای جاوا اسکریپت را بسیار آسان‌تر و خواناتر کرده است. با استفاده از ES6، توسعه‌دهندگان می‌توانند با نوشتن کد کمتر، برنامه‌های پیچیده‌تری را ایجاد کنند. این استاندارد امکانات جدیدی را برای جاوا اسکریپت ایجاد کرده است که باعث می‌شود یادگیری و استفاده از آن لذت‌بخش‌تر شود. در واقع، ES6 ابزاری قدرتمند است که به برنامه‌نویسان کمک می‌کند تا کدهای کارآمدتر و با کیفیت‌تری بنویسند.”

نسخه ES6 ویژگی‌های جذابی را به زبان جاوا اسکریپت اضافه کرده است. در این نسخه، روش‌های جدیدی برای تعریف متغیرها، نوشتن تابع‌ها و کار با رشته‌ها معرفی شده است. به عنوان مثال، با استفاده از const و let می‌توانیم متغیرهایی با دامنه محدودتر تعریف کنیم و با arrow fuction، کدهایمان را کوتاه‌تر و خواناتر کنیم. در این مقاله، به بررسی دقیق این ویژگی‌ها و کاربردهای آن‌ها خواهیم پرداخت.

آموزش جاوا اسکریپت

تاریخچه ES6

ES6، که به عنوان ECMAScript 2015 نیز شناخته می‌شود، ششمین نسخه اصلی استاندارد زبان برنامه‌نویسی ECMAScript است. این نسخه در سال 2015 منتشر شد و تغییرات و ویژگی‌های مهمی را به جاوا اسکریپت اضافه کرد.

قبل از ES6، جاوا اسکریپت یک زبان برنامه‌نویسی نسبتاً ساده بود که برای توسعه وب‌سایت‌های ساده استفاده می‌شد. با افزایش پیچیدگی وب‌سایت‌ها و اپلیکیشن‌های وب، نیاز به یک زبان برنامه‌نویسی قدرتمندتر و انعطاف‌پذیرتر احساس شد.

ES6 به طور قابل توجهی توانایی توسعه‌دهندگان جاوا اسکریپت را افزایش داده است. با استفاده از ویژگی‌های جدید و قدرتمند ES6، توسعه‌دهندگان می‌توانند کدهای تمیزتر، خواناتر و کارآمدتر بنویسند. این امر به نوبه خود منجر به توسعه وب‌سایت‌ها و اپلیکیشن‌های وب پیچیده‌تر و قدرتمندتر شده است.

پس از ES6، استاندارد ECMAScript به طور مداوم در حال توسعه است. هر سال، نسخه جدیدی از ECMAScript منتشر می‌شود که ویژگی‌های جدید و بهبودهایی را به زبان اضافه می‌کند. این روند باعث می‌شود که جاوا اسکریپت به یک زبان برنامه‌نویسی مدرن و قدرتمند تبدیل شود.

جاوا اسکریپت ES6 چیست

مهم‌ترین ویژگی‌های جاوا اسکریپت ES6 چیست؟

جاوا اسکریپت ES6 یک به‌روزرسانی بزرگ در زبان جاوا اسکریپت محسوب می‌شود که ویژگی‌های جدید و قدرتمندی را معرفی کرده است. این ویژگی‌ها باعث شده‌اند تا نوشتن کد جاوا اسکریپت ساده‌تر، خواناتر و کارآمدتر شود.

برخی از مهم‌ترین تغییرات ES6 عبارتند از:

  • Let
  • Const
  • Arrow Functions
  • Destructuring
  • Default Parameters
  • Rest
  • Classes
  • Spread
  • Template literals
  • Promises

1 | Const در جاوا اسکریپت ES6

وقتی می‌خواهیم مقداری را در برنامه‌مان ثابت نگه داریم، از const استفاده می‌کنیم. این کلمه کلیدی به ما کمک می‌کند تا از تغییر تصادفی مقادیر جلوگیری کنیم و کدمان را ایمن‌تر کنیم؛ به عنوان مثال، کد زیر را برای نشان دادن استفاده از کلمه کلیدی const در سناریوهای مختلف در نظر بگیرید:

// Const
const name = 'Mukul';
console.log(name);
// This will display 'Mukul' in the console.
// Attempting to reassign a const variable
name = 'Rahul';
console.log(name);
// This will result in a TypeError.
// Trying to declare a const variable first
// and then initialize it in another line
const org_name;
org_name = "Sabzlearn";
console.log(org_name);
// This will throw a syntax error: missing initializer in const declaration.

در مثال بالا، به متغیر ثابت name مقدار Mukul اختصاص داده شده است و هر گونه تلاش برای تخصیص مجدد آن و همچنین تلاش برای اعلام نوعت متغیر ثابت بدون مقداردهی اولیه بلافاصله، منجر به خطا می‌شود.

جاوا اسکریپت ES6 چیست

2 | let در جاوا اسکریپت ES6

let یک روش جدید برای تعریف متغیرها است که جایگزین بهتری برای var محسوب می‌شود. let محدوده بلوکی دارد، یعنی یک متغیر let تنها در بلوکی که تعریف شده است قابل دسترسی است. این ویژگی به ما کمک می‌کند تا از تصادفات ناشی از تغییر مقدار متغیرها در قسمت‌های مختلف کد جلوگیری کنیم.

برای درک بهتر به مثال زیر دقت کنید:

let name = "سبزلرن";
console.log(name); // سبزلرن

if (true) {
  let age = 30;
  console.log(age); // 30
}
// console.log(age); // Error: age is not defined

ابتدا نشان دادیم که با استفاده از let کلمه “سبزلرن” در متغییر name قرار گرفت؛ در ادامه یک حلقه if تشکیل دادیم و درون آن یک متغییر با نام age به کمک let تعریف کردیم.

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

آموزش جاوا اسکریپت

3 | Arrow Functions در جاوا اسکریپت ES6

Arrow Functions یکی از ویژگی‌های جذاب و قدرتمند جاوا اسکریپت ES6 است که نحوه تعریف توابع را به طور قابل توجهی ساده کرده است. این توابع سینتکس کوتاه‌تر و خواناتر دارند و در بسیاری از موارد، جایگزین مناسبی برای توابع معمول جاوا اسکریپت محسوب می‌شوند.

برای مثال قطعه کد زیر را در نظر بگیرید که ایجاد و اجرای arrow fuction را نشان می‌دهد:

// Function declaration using the function keyword
function simpleFunc(){
 console.log("Declared using the function keyword");
}
simpleFunc();

// Function declared using arrow functions
const arrowFunc = () => {
 console.log("Declared using arrow functions");
}
arrowFunc();

در مثال بالا، تابع اول، simpleFunc با استفاده از کلمه کلیدی معمولی function اعلام شده، در حالی که تابع دوم، arrowFunc با استفاده از توابع پیکان اعلان شده است. هر دو تابع خروجی یکسانی دارند که مثال بالا تطبیق‌پذیری و مختصر بودن توابع پیکان را نشان می‌دهند.

4 | Template literals در جاوا اسکریپت ES6

Template literal یکی از ویژگی‌های قدرتمند جاوا اسکریپت ES6 هستند که به شما اجازه می‌دهند رشته‌های چندخطی و قالب‌بندی شده را به روشی بسیار خواناتر و انعطاف‌پذیرتر ایجاد کنید. این ویژگی به خصوص در هنگام ساختن رشته‌های پیچیده، شامل متغیرها و عبارات، بسیار مفید است.

Template literal راهی راحت برای ترکیب متغیرهای جاوا اسکریپت در رشته‌ها بدون نیاز به عملگر + ارائه می‌دهند. Template literal با استفاده از Backtick یا ( “ ) تعریف می‌شوند. مثال زیر نحوه استفاده از این الفاظ را بیان می‌کند:

// Without Template Literal
var name = 'Sabzlearn';
console.log('Printed without using Template Literal');
console.log('My name is ' + name);

// With Template Literal
const name1 = 'Sabzlearn';
console.log('Printed by using Template Literal');
console.log(`My name is ${name1}`);

در این مثال، اولین مجموعه از عبارات log برای الحاق رشته‌ها استفاده می‌کند، در حالی که مجموعه دوم از الفاظ الگو بهره می‌برد. هر دو رویکرد خروجی یکسانی دارند و نشان می‌دهند که چگونه الفاظ الگو درون‌یابی رشته‌ای را به شیوه‌ای مختصر و خوانا ساده‌تر می‌کنند.

5 | Destructuring در جاوا اسکریپت ES6

Destructuring یکی از ویژگی‌های جذاب و کاربردی جاوا اسکریپت ES6 است که به شما امکان می‌دهد به صورت مستقیم عناصر یک آرایه یا خصوصیات یک شیء را به متغیرهای جداگانه اختصاص دهید. این ویژگی نه تنها کد شما را خواناتر می‌کند، بلکه باعث کوتاه‌تر شدن آن نیز می‌شود.

برای مثال  فرض کنید یک آرایه از میوه‌ها داریم:

const fruits = ['apple', 'banana', 'orange'];

برای دسترسی به هر یک از این عناصر، به طور معمول باید از اندیس (index) استفاده می‌کردیم:

let fruit1 = fruits[0];
let fruit2 = fruits[1];
let fruit3 = fruits[2];

با استفاده از Destructuring، این کار بسیار ساده‌تر می‌شود:

const [fruit1, fruit2, fruit3] = fruits;

در این مثال، عناصر آرایه fruits به ترتیب به متغیرهای fruit1, fruit2 و fruit3 اختصاص داده می‌شوند.

توجه: ترتیب عناصر در آرایه و متغیرهای سمت چپ بسیار مهم است.

آموزش جاوا اسکریپت

6 | Default Parameters در جاوا اسکریپت ES6

پارامترهای پیش‌فرض (Default Parameters) یکی از ویژگی‌های قدرتمند جاوا اسکریپت ES6 است که امکان تعیین مقادیر پیش‌فرض برای پارامترهای یک تابع را فراهم می‌کند. به عبارت ساده‌تر، اگر هنگام فراخوانی تابع مقداری برای یک پارامتر مشخص نشود، مقدار پیش‌فرض آن به کار می‌رود. این ویژگی باعث می‌شود کدهای شما انعطاف‌پذیرتر شده و از تکرار کدها جلوگیری شود.

مثال ساده:

function greet(name = 'World') {
  console.log(`Hello, ${name}!`);
}

greet(); // خروجی: Hello, World!
greet('Alice'); // خروجی: Hello, Alice!

در مثال بالا، اگر هنگام فراخوانی تابع greet هیچ مقداری برای پارامتر name مشخص نشود، مقدار پیش‌فرض ‘World’ استفاده می‌شود.

جاوا اسکریپت ES6 چیست

7 | Classes در جاوا اسکریپت ES6

کلاس‌ها یکی از مهم‌ترین ویژگی‌هایی هستند که با آمدن نسخه ES6 به جاوا اسکریپت اضافه شدند. کلاس‌ها به ما این امکان را می‌دهند که به شیوه‌ای ساختار ‌یافته‌تر و شیء‌گراتر به ایجاد اشیاء بپردازیم.

به زبان ساده، یک کلاس مانند یک قالب یا الگو برای ایجاد اشیاء است. این قالب مشخص می‌کند که یک شیء چه ویژگی‌ها (properties) و چه رفتارهایی (methods) می‌تواند داشته باشد.

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

class MyClass {
    constructor(param1, param2) {
        this.property1 = param1;
        this.property2 = param2;
    }

    method1() {
        // ...
    }

    method2() {
        // ...
    }
}

(constructor): این متد زمانی فراخوانی می‌شود که یک شیء جدید از کلاس ساخته می‌شود. وظیفه اصلی سازنده، مقداردهی اولیه به ویژگی‌های شیء است.

متدها: توابعی هستند که داخل کلاس تعریف می‌شوند و رفتارهای شیء را مشخص می‌کنند.

مثال عملی:

class Person {
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }

    greet() {
        console.log(`Hello, my name is ${this.name} and I am ${this.age} years old.`);
    }
}

// ایجاد یک شیء از کلاس Person
const person1 = new Person("علی", 30);

// فراخوانی متد greet
person1.greet(); // خروجی: Hello, my name is علی and I am 30 years old.

8 | پارامتر Rest و عملگر Spread در جاوا اسکریپت ES6

پارامتر Rest به شما اجازه می‌دهد تا تعداد نامشخصی از آرگومان‌ها را در یک تابع به عنوان یک آرایه جمع‌آوری کنید.

نحوه استفاده: با قرار دادن سه نقطه (…) قبل از نام یک پارامتر در تعریف تابع، آن پارامتر به عنوان پارامتر Rest در نظر گرفته می‌شود.

مثال:

function sum(...numbers) {
  return numbers.reduce((total, num) => total + num, 0);
}

console.log(sum(1, 2, 3, 4, 5)); // خروجی: 15

در این مثال، پارامتر numbers تمام آرگومان‌های اضافی را که به تابع sum پاس داده می‌شوند، در یک آرایه جمع‌آوری می‌کند و سپس مجموع عناصر این آرایه را محاسبه می‌کند.

از طرفی عملگر Spread برعکس پارامتر Rest عمل می‌کند. این عملگر یک آرایه یا یک شیء را به عناصر جداگانه تبدیل می‌کند.

نحوه استفاده: با قرار دادن سه نقطه (…) قبل از یک آرایه یا شیء، عناصر آن به صورت جداگانه گسترش می‌یابند.

مثال‌ گسترش آرایه:

const numbers = [1, 2, 3];
const newNumbers = [...numbers, 4, 5];
console.log(newNumbers); // خروجی: [1, 2, 3, 4, 5]

مثال گسترش شیء:

const person = { name: 'Ali', age: 30 };
const newPerson = { ...person, city: 'Tehran' };
console.log(newPerson); // خروجی: { name: 'Ali', age: 30, city: 'Tehran' }
// Maps in JavaScript
const myMap = new Map([
 ["stringKey", 23],
 [48, "numberedKey"]
]);
myMap.set(false, 0);
myMap.set(1, true);
console.log(
 myMap.get("stringKey"),
 myMap.get(48),
 myMap.get(false),
 myMap.get(1)
);

// Sets in JavaScript
const mySet = new Set(["string value", "string value"]);
mySet.add(24);
mySet.add(24);
mySet.add(3);
console.log(mySet);

تفاوت بین پارامتر Rest و عملگر Spread

ویژگی پارامتر Rest عملگر Spread
موقعیت استفاده در تعریف تابع، قبل از آخرین پارامتر قبل از آرایه یا شیء
عملکرد جمع‌آوری آرگومان‌های اضافی در یک آرایه گسترش عناصر یک آرایه یا شیء

9 | Map و set در جاوا اسکریپت ES6

Map و Set دو ساختار داده جدیدی هستند که در جاوا اسکریپت ES6 معرفی شدند و برای مدیریت مجموعه داده‌ها به روشی کارآمدتر و انعطاف‌پذیرتر نسبت به شیءهای معمولی طراحی شده‌اند.

یک Map مجموعه‌ای از جفت‌های کلید-مقدار است که در آن کلید می‌تواند هر نوع داده‌ای باشد، حتی اشیاء یا توابع. برخلاف شیءهای معمولی که فقط رشته‌ها یا Symbol را به عنوان کلید می‌پذیرند، Mapها بسیار انعطاف‌پذیرتر هستند.

یک Set مجموعه‌ای از مقادیر منحصربه‌فرد است. به عبارت دیگر، هر مقدار فقط یک بار در یک Set می‌تواند وجود داشته باشد.

برای درک عملی این موضوع، مثال زیر را در نظر بگیرید که استفاده از Map و Set را نشان می‌دهد:

// Maps in JavaScript
const myMap = new Map([
 ["stringKey", 23],
 [48, "numberedKey"]
]);
myMap.set(false, 0);
myMap.set(1, true);
console.log(
 myMap.get("stringKey"),
 myMap.get(48),
 myMap.get(false),
 myMap.get(1)
);

// Sets in JavaScript
const mySet = new Set(["string value", "string value"]);
mySet.add(24);
mySet.add(24);
mySet.add(3);
console.log(mySet);

در این مثال، نقشه جاوا اسکریپت «myMap» شامل جفت‌های کلید-مقدار مختلف است و مجموعه جاوا اسکریپت «mySet» تضمین می‌کند که فقط مقادیر منحصربه‌فرد ذخیره می‌شوند. خروجی مثال فوق، بازیابی مقادیر از Map و محتوای Set را منعکس می‌کند و کاربرد عملی Maps و Sets را در جاوا اسکریپت نشان می‌دهد.

آموزش جاوا اسکریپت

10 |  Promises در جاوا اسکریپت ES6

Promiseها در جاوا اسکریپت ES6 ابزاری قدرتمند برای مدیریت عملیات ناهمزمان هستند. این عملیات شامل درخواست‌های شبکه، دسترسی به پایگاه داده، یا هر فرآیندی است که ممکن است زمان‌بر باشد و نتیجه آن بلافاصله مشخص نباشد.

مثال زیر نحوه ایجاد و پیاده‌سازی وعده در جاوا اسکریپت را نشان می‌دهد:

const myPromise = new Promise((resolve, reject) => {
 setTimeout(() => {
 resolve("Promise is Working");
 }, 2000);
});

myPromise.then((value) => {
 console.log(value);
});

این کد یک Promise ایجاد می‌کند که بعد از 2 ثانیه به نتیجه می‌رسد و پیام “Promise is Working” را نشان می‌دهد. سپس، با استفاده از .then() نتیجه‌ی Promise را در کنسول چاپ می‌کنیم. این مثال ساده نشان می‌دهد که چگونه می‌توان از Promise برای مدیریت عملیات‌های ناهمزمان در جاوا اسکریپت استفاده کرد.

11 | Symbol در جاوا اسکریپت ES6

Symbol به عنوان یک راهکار برای ایجاد کلیدهای منحصر به فرد و غیر قابل تکرار در اشیاء به کار می‌روند. در واقع، هر Symbol یک مقدار منحصربه‌فرد است که با هر Symbol دیگری متفاوت است، حتی اگر با همان توصیف ایجاد شده باشند.

رای درک عملی، مثال کد زیر را در نظر بگیرید که استفاده از نوع داده Symbol را نشان می‌دهد:

const company = {
 name: "Sabzlearn",
 description: "A Computer Science portal for all user."
}

let shortNameSymbol = Symbol("short_name");
company[shortNameSymbol] = "Sl";

console.log(`${company.name}, \n${company.description}`);
console.log(`Company's Short Name using company.short_name: ${company.short_name} `);
console.log(`Company's Short Name using company[short_name]: ${company[shortNameSymbol]} `);

در مثال بالا، Symbol به نام «shortNameSymbol» به عنوان یک شناسه پنهان برای ذخیره نام کوتاه company استفاده می‌شود. خروجی دسترسی به ویژگی‌های company را ارائه داده و منحصربه‌فرد بودن و حریم خصوصی Symbolهای جاوا اسکریپت را در مقایسه با نوع داده‌هایی معمولی نشان می‌دهد.

جاوا اسکریپت ES6 چیست

12 |  متدهای String در جاوا اسکریپت ES6

جاوا اسکریپت سه متد رشته معرفی شده در ES6 را برای دست‌کاری رشته‌های پیشرفته ارائه می‌دهد:

startsWith: این متد فقط در صورتی true را برمی‌گرداند که رشته آزمایشی با رشته مشخص‌شده شروع شود.

endsWith: اگر رشته با مقدار رشته ارائه‌شده به پایان برسد، مقدار true را برمی‌گرداند.

Includes: اگر رشته آزمایشی حاوی مقدار مشخص‌شده باشد، متد include مقدار true را برمی‌گرداند.

مثال زیر نحوه استفاده از متدهای رشته را نشان می‌دهد:

// String startsWith()
const textStart = "This string implements the startsWith() method.";
console.log(
 textStart.startsWith("This string"),
 textStart.startsWith("This is")
);

// String endsWith()
const textEnd = "This string implements the endsWith() method.";
console.log(
 textEnd.endsWith("clear() method."),
 textEnd.endsWith("method.")
);

// String includes()
const textIncludes = "This string implements the includes() method.";
console.log(
 textIncludes.includes("includes()"),
 textIncludes.includes("My name")
);

در مثال بالا، سه متد رشته startsWith، endsWith و include برای رشته‌های مختلف اعمال می‌شوند و خروجی نشان می‌دهد که آیا شرایط مشخص‌شده برآورده شده است یا خیر. این مثال به ما نشان می‌دهد که چگونه می‌توان از این متدها برای کارهای مختلف دست‌کاری رشته در جاوا اسکریپت استفاده کرد.

آموزش جاوا اسکریپت

13 |متدهای آرایه در جاوا اسکریپت ES6

جاوا اسکریپت چندین متد آرایه را در ES6 معرفی می‌کند که دست‌کاری آرایه را افزایش می‌دهند که فهرست آن‌ها به صورت زیر است:

  • From

این متد یک آرایه جدید ایجاد می‌کند که عناصر آن از یک شیء تکرارپذیر (مانند رشته، آرایه و …) کپی می‌شوند.

  • Keys

این متد یک آرایه از اندیس‌های (index) عناصر یک آرایه را برمی‌گرداند.

  • Find

این متد اولین عنصری از آرایه را که شرط مشخص شده توسط یک تابع را برآورده می‌کند، برمی‌گرداند.

  • findIndex

مشابه متد find عمل می‌کند، با این تفاوت که به جای خود عنصر، اندیس (index) آن عنصر را در آرایه برمی‌گرداند.

مثال زیر در این رابطه مهم است:

// Array.from() method
const newStringArray = Array.from("Sabzlearn");
console.log("Using Array.from(): ", newStringArray);

// Array.keys() method
const dairyProducts = ["Curd", "Cheese", "Butter", "Ice-Cream"];
const arrayKeysIterator = dairyProducts.keys();
console.log("Using Array.keys(): ");
for(let key of arrayKeysIterator){
 console.log(key);
}

// Array.find() method
const wordArray = ["clock", "strong", "planet", "earth"];
const lessThanSix = (item) => {
 return item.trim().length < 6;
}
console.log("Using Array.find(): ", wordArray.find(lessThanSix));
console.log("Using Array.findIndex(): ", wordArray.findIndex(lessThanSix));

در مثال بالا متدهای آرایه Array.from، Array.keys، Array.find و Array.findIndex برای سناریوهای مختلف اعمال می‌شوند و کاربرد عملی خود را در کارهای دست‌کاری آرایه در جاوا اسکریپت نشان می‌دهند.

جاوا اسکریپت ES6 چیست

14 | متد Object.entries در جاوا اسکریپت ES6

Object.entries یکی از متدهای قدرتمندی است که در نسخه ES6 جاوا اسکریپت معرفی شده و برای تبدیل یک شیء به یک آرایه دو بعدی از جفت‌های کلید-مقدار استفاده می‌شود. هر عنصر از این آرایه شامل یک آرایه دو عضوی است که عنصر اول آن کلید و عنصر دوم مقدار مربوطه در شیء اصلی است.

مثال زیر پیاده‌سازی متد Object.entries را نشان می‌دهد:

const myArr =
            ["Sabzlearn", "A Computer Science Portal for all users"];
const arr = myArr.entries()
for(let item of arr){
            console.log(item);
}

در مثال بالا، متد Object.entries روی آرایه myArray اعمال می‌شود که در نتیجه یک شی آرایه با جفت‌های کلید-مقدار ایجاد می‌شود. خروجی هر ورودی را به صورت یک آرایه نمایش می‌دهد که عنصر اول کلید و عنصر دوم مقدار مربوطه است.

جمع بندی

جاوا اسکریپت از بدو تولد تا به حال دچار تغییرات گوناگونی شده است که از مهم‌ترین این تغییرات می‌توان به استانداردسازی آن که به نام ECMAScript 2015 یا جاوا اسکریپت ES6 شناخته می‌شود، اشاره کرد. ES6 ویژگی‌های ارزشمندی مانند کلاس‌ها، ماژول‌ها، arrow fuction، Destructuring و غیره را معرفی می‌کند که این ویژگی‌ها به تجربه ساده‌تر و کاربرپسندتر هنگام کار با جاوا اسکریپت کمک می‌کنند. در مطلب بالا از مجله سبزلرن اطلاعات نسبتاً کامل و مطلوبی در رابطه با جاوا اسکریپت ES6 و ویژگی‌های آن ارائه‌شده که می‌تواند برای کاربران مفید واقع شود.

چگونه میتوانم در جاوا اسکریپت حرفه ای تر شویم؟

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

آموزش جاوا اسکریپت

نظرات
ثبت نظر جدید
yasharn1378 | کاربر
1402/11/29

خیلی عالی
البته قبل این مقاله داخل دوره js استاد سعیدی راد سطح پیشرفته جلسه تاریخچه جاوا اسکریپت کاملا با این ES6
و کلا اکما اسکریپت آشنا شده بودم ولی بازم خوندن این مطلب خالی از لطف نبود
مرسی از تیم سبز لرن و استاد سعیدی راد و نویسنده این مقاله

محمدامین سعیدی راد | مدرس
1402/11/29

🙏❤️

خادم المهدی | کاربر
1402/10/19

خوب بود

محمدامین سعیدی راد | مدرس
1402/10/19

❤️❤️

آموزش جاوا اسکریپت