درس 13 از 24

Bracket Notation در JavaScript چیست؟ دسترسی به کاراکترهای رشته با ایندکس

بخش: کار با رشته در جاوااسکریپت

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

ایندکس (index) جایگاه یک کاراکتر درون رشته است و مبنایش صفر است (zero-based). یعنی کاراکتر اول رشته ایندکس 0 دارد، کاراکتر دوم ایندکس 1 دارد، و همین‌طور ادامه پیدا می‌کند.

برای مثال، در رشته‌ی hello، کاراکتر h در ایندکس 0 قرار دارد، e در ایندکس 1 است، l در ایندکس 2 است، و به همین ترتیب.

براکت نوتیشن از کروشه‌ها ([]) و ایندکسِ کاراکتری که می‌خواهید به آن دسترسی پیدا کنید استفاده می‌کند. بیایید یک مثال ببینیم:

let greeting = "hello";
console.log(greeting[1]); // "e"
"e"

در این مثال، ما می‌توانیم به کاراکتری که در ایندکس 1 قرار دارد دسترسی پیدا کنیم که همان e است.

برای گرفتن آخرین کاراکتر یک رشته، می‌توانید از طول رشته منهای یک استفاده کنید. ویژگی length در یک رشته به شما می‌گوید آن رشته چند کاراکتر دارد؛ پس برای دسترسی به آخرین کاراکتر، باید یک واحد از length کم کنید:

let greeting = "hello";
console.log(greeting[greeting.length - 1]); // "o"
"o"

در این حالت، طول hello برابر 5 است و آخرین کاراکتر (o) در ایندکس 4 قرار دارد که همان 5 - 1 است.

اگر بخواهید چند کاراکتر را بگیرید، می‌توانید براکت نوتیشن را این‌طور استفاده کنید:

let greeting = "hello";
let firstTwo = greeting[0] + greeting[1]; // "he"
console.log(firstTwo);
"he"

در این مثال، ما با استفاده از براکت نوتیشن، کاراکتر اول و دوم را به هم متصل می‌کنیم (concatenate) تا رشته‌ی he ساخته شود.

براکت نوتیشن زمانی مفید است که لازم باشد به کاراکترهای مشخصی در یک رشته دسترسی پیدا کنید؛ مثل استخراج حروف اول از یک نام (initials) یا بررسی یک حرف مشخص برای اعتبارسنجی (validation).


سوالات

ایندکس کاراکتر "r" در رشته‌ی "JavaScript" چیست؟

  • 2
  • 4
  • 6
  • 8

با استفاده از براکت نوتیشن چطور به آخرین کاراکتر یک رشته دسترسی پیدا می‌کنید؟

  • string[length]
  • string[string.length]
  • string[string.length - 1]
  • string[string - 1]

براکت نوتیشن در جاوااسکریپت برای رشته‌ها به شما اجازه می‌دهد چه کاری انجام دهید؟

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