آموزش JavaScript
دسته بندی ( ۲۶۰ آموزش )
نمایش دسته بندی ها (۲۶۰ آموزش)
مباحث اولیه، در JavaScript
مباحث اولیه، در JavaScript 18
کنسول (Console)، در JavaScript
کنسول (Console)، در JavaScript 24
نمایش متن در خروجی صفحه، در JavaScript
نمایش متن در خروجی صفحه، در JavaScript 2
عملگرها (Operator)، در JavaScript
عملگرها (Operator)، در JavaScript 0
متغیرها (Variable)، در JavaScript
متغیرها (Variable)، در JavaScript 8
رشته ها (متن ها - String)، در JavaScript
رشته ها (متن ها - String)، در JavaScript 28
نمایش پیام، در JavaScript
نمایش پیام، در JavaScript 4
توابع (Function)، در JavaScript
توابع (Function)، در JavaScript 5
حلقه ها (Loop)، در JavaScript
حلقه ها (Loop)، در JavaScript 3
آرایه ها (Array)، در JavaScript
آرایه ها (Array)، در JavaScript 34
شیء ها (Object)، در JavaScript
شیء ها (Object)، در JavaScript 2
انتخاب عنصرهای صفحه (اشاره به عنصرهای صفحه)، در JavaScript
انتخاب عنصرهای صفحه (اشاره به عنصرهای صفحه)، در JavaScript 7
کلاس های (Class) عنصرها، در JavaScript
کلاس های (Class) عنصرها، در JavaScript 5
id عنصرها، در JavaScript
id عنصرها، در JavaScript 0
مشخصه های (Attribute) عنصرها، در JavaScript
مشخصه های (Attribute) عنصرها، در JavaScript 1
رویدادها (Event)، در JavaScript
رویدادها (Event)، در JavaScript 0
عملیات های ریاضی، در JavaScript
عملیات های ریاضی، در JavaScript 18
تاریخ و زمان، در JavaScript
تاریخ و زمان، در JavaScript 10
زمان بندی اجرای کدها، در JavaScript
زمان بندی اجرای کدها، در JavaScript 2
افزودن و یا حذف محتوا و کد، به صفحه، در JavaScript
افزودن و یا حذف محتوا و کد، به صفحه، در JavaScript 6
فرم ها (Form)، در JavaScript
فرم ها (Form)، در JavaScript 11
عکس ها (Image)، در JavaScript
عکس ها (Image)، در JavaScript 2
دکمه ها (Button)، در JavaScript
دکمه ها (Button)، در JavaScript 2
لینک ها (Link)، در JavaScript
لینک ها (Link)، در JavaScript 5
پنجره ها (Window)، در JavaScript
پنجره ها (Window)، در JavaScript 2
جدول ها (Table)، در JavaScript
جدول ها (Table)، در JavaScript 1
رنگ ها (Color) و تعیین رنگ، در JavaScript
رنگ ها (Color) و تعیین رنگ، در JavaScript 1
کلیک کردن (Click)، در JavaScript
کلیک کردن (Click)، در JavaScript 1
اسکرول (Scroll)، در JavaScript
اسکرول (Scroll)، در JavaScript 2
کار با کل صفحه، در JavaScript
کار با کل صفحه، در JavaScript 1
صفحه فعلی (Current Page)، در JavaScript
صفحه فعلی (Current Page)، در JavaScript 19
دریافت ورودی از کاربر، در JavaScript
دریافت ورودی از کاربر، در JavaScript 1
تمرکز (Focus)، در JavaScript
تمرکز (Focus)، در JavaScript 3
مرورگر اینترنت (Browser)، در JavaScript
مرورگر اینترنت (Browser)، در JavaScript 3
ذخیره اطلاعات در مرورگر اینترنت (Browser) کاربر، در JavaScript
ذخیره اطلاعات در مرورگر اینترنت (Browser) کاربر، در JavaScript 10
کار با کیبورد (Keyboard)، در JavaScript
کار با کیبورد (Keyboard)، در JavaScript 2
موس، در JavaScript
موس، در JavaScript 1
Iframe ها، در JavaScript
Iframe ها، در JavaScript 1
بارگذاری (دانلود) فایل، در JavaScript
بارگذاری (دانلود) فایل، در JavaScript 1
علامت ها (Sign)، در JavaScript
علامت ها (Sign)، در JavaScript 0
تکنیک Ajax ، در JavaScript
تکنیک Ajax ، در JavaScript 4
ساختار JSON ، در JavaScript
ساختار JSON ، در JavaScript 0
منسوخ شده ها (Deprecated و Obsolete)، در JavaScript
منسوخ شده ها (Deprecated و Obsolete)، در JavaScript 1
مباحث عمومی، در JavaScript
مباحث عمومی، در JavaScript 2

مرتب کردن عنصرهای (Element) یک آرایه (Array)، به صورت نزولی، با روش های sort و reverse ، در JavaScript

در کلید شماره 2402 ، روش sort در JavaScript را معرفی کردیم که برای مرتب کردن عنصرهای (Element) یک آرایه (Array)، به صورت صعودی، به کار می رود. اما شاید بخواهیم که عنصرهای (Element) آرایه (Array)، به صورت نزولی مرتب شوند.

برای این منظور، می توانیم از ترکیب روش های sort و reverse استفاده کنیم. روش reverse در JavaScript ، برای معکوس کردن ترتیب عنصرهای (Element) یک آرایه (Array) به کار می رود ( کلید شماره 27877 ).

بنابراین ابتدا می توانیم با استفاده از روش sort ، عنصرهای (Element) آرایه (Array) را به صورت صعودی مرتب کنیم و سپس با استفاده از روش reverse ، ترتیب عنصرهای (Element) آرایه (Array) را معکوس نماییم تا ترتیب صعودی به ترتیب نزولی تبدیل شود.

اگر آرایه شامل تعدادی رشته (String) باشد، آنگاه عنصرهای آرایه بر اساس حروف الفبا (البته به صورت معکوس)، مرتب می شوند و اگر آرایه از تعدادی عدد تشکیل شده باشد، آنگاه عنصرهای آرایه بر حسب رقم اعداد مرتب می شوند.

به عنوان مثال، اگر آرایه مورد نظرمان در متغیری با نام kelidestan ذخیره شده باشد، آنگاه کد JavaScript زیر را می نویسیم :

نکته مهم

روش sort در JavaScript ، هنگام مرتب کردن اعداد، رقم های متناظر اعداد را مقایسه می کند (نه مقدار کلی عدد)، مثلا عدد 9 را بزرگتر از عدد 23 در نظر می گیرد، زیرا رقم اول عدد 9 برابر 9 و رقم اول عدد 23 برابر 2 خواهد بود و 9 از 2 بزرگتر است.

بنابراین روش sort در JavaScript ، نتایج صحیحی را برای اعداد برنمی گرداند.

برای رفع این مشکل، هنگامی که آرایه شامل اعداد می باشد، می توانیم روش sort را به صورت زیر به کار ببریم (یک تابع مقایسه (Compare Function) تعریف می کنیم که شیوه تعیین ترتیب عنصرها توسط روش sort را تغییر می دهد) :

بنابراین کد نهایی (به همراه روش reverse ) باید به صورت زیر باشد :

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

مثال

نتیجه :

خطا - صفحه را دوباره بارگذاری کنید
مثال

نتیجه :

خطا - صفحه را دوباره بارگذاری کنید

در مثال زیر، روش sort را به گونه ای به کار می بریم که بتواند اعداد را دقیقا به صورت صحیح مرتب کند :

مثال

نتیجه :

خطا - صفحه را دوباره بارگذاری کنید
نکته

بد نیست که مثال هایی را از شیوه غلط به کار بردن روش sort برای مرتب کردن ترتیب اعداد ذکر کنیم تا نتایج غلط آنها را مورد بررسی قرار دهید.

در مثال زیر، چند عدد تک رقمی و دو رقمی را به کار می بریم و نتایج، غلط خواهند بود :

مثال

نتیجه :

خطا - صفحه را دوباره بارگذاری کنید

مشاهده می کنید که نتایج غلطی به دست آمده است.

در مثال زیر، روش sort را به صورت عادی به کار می بریم و با توجه به اینکه اعداد تک رقمی هستند، نتایج صحیح برگردانده می شوند (گاهی بر حسب اعداد تعریف شده در آرایه، ممکن است نتایج صحیح باشند) :

مثال

نتیجه :

خطا - صفحه را دوباره بارگذاری کنید

مشاهده می کنید که با توجه به تک رقمی بودن اعداد، نتایج صحیح می باشند.

منابع و لینک های مفید
نویسنده علیرضا گلمکانی
شماره کلید 28148
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 0 0 0

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)

جستجو در کلیدستان، توسط گوگل

جستجو در عنوان کلیدها

دسترسی سریع

کلید
×

شماره کلید


دسته بندی
×

شماره دسته کلید


جستجو
×

جستجو