ترفندهای پیشرفته jQuery (قسمت نهم)

- visibility ٠ mode_comment

در این قسمت با ادامه ترفندهای پیشرفته jQuery در خدمت شما هستیم. jquery trickshot

موضوع دوم : عملکرد و کارائی

ترفند 17 : از کدهای Javascript‌خالص هم استفاده کنید

ساختن یک شئ جدید در jQuery باعث تلف شدن زمان بیشتری میشه و Performance رو میتونه پایینتر بیاره و تا جای ممکن شما باید از متدها و امکاناتی که خود Javascript داره استفاده کنید. به این کدهای خالص Javascript یا Vanilla JS گویند. میتونین این لینک و این لینک رو ببینید تا بیشتر با Vanilla آشنا بشید. در بعضی از مواقع استفاده از کدهای موجود در Javascript کوتاهتر و سریعتر خواهد بود. این مثال رو در نظر بگیرید:

فرض کنید میخایم id تمام li ها رو در Console چاپ کنیم:

با jQuery:

با Javascript:

همونطور که دیدین با استفاده از Javascript هم کوتاهتر شد و هم چون از متدهای خود JS هست سریعتر و بهینه تر هست. پس سعی کنید در بازی هایی که میسازید و یا زمانی که میخواهید در Canvas دستکاری کنید ، از jQuery و Javascript بصورت همزمان استفاده کنید و در حلقه ها از قدرت Javascript بهره ببرید و عملکرد برنامه خودتون رو ارتقاء بدین.

ترفند 18 : Selector ها رو بهینه سازی کنید

اگر شما میخواهید برنامه ای که میسازید خیلی بهینه باشه و همچنین قصد دارید که با استفاده از jQuery این کارو انجام بدین ، حتما باید انتخاب کننده ها رو بصورت بهینه استفاده کنید. در اینجا چند نمونه مثال برای شما قرار داده میشه که با استفاده از متدهای time و timeEnd موجود در Console میتونیم زمان مورد نیاز برای هر عملیات رو بدست بیاریم.

کد HTML:

کدهای JS:

اول دو متغیر تعریف میکنیم و تعداد دفعات حلقه رو برابر با 10000 قرار میدیم:

انتخاب کننده تخیلی و پیچیده:

همونطور که دیدین در ابتدا و انتها دو خط کد قرار داده شد و اسم اون برابر با Fancy قرار گرفت ، با اینکار در Console مدت زمانی که عبارت ما بین این دو خط کد سپری کرده رو نشون میده. میبینید که یک حلقه رو 10000 بار اجرا کردیم تا ببینیم که این Selector چقد زمان رو مصرف میکنه. در آخر نتایج نمایش داده میشه. این انتخاب کننده کندترین مورد هست ، چون پیچیده هست و از first هم استفاده شده و طبیعیه که زمان بیشتری رو نیاز داره.

انتخاب کننده پدر فرزندی:

این انتخاب کننده کمی بهتر از مورد اول هست.

انتخاب کننده پدر فرزندی بوسیله کلاس:

تعدادی از مرورگرها این انتخاب کننده رو سریعتر از مورد قبلی انجام میدن.

انتخاب کننده با کلاس:

این مورد بهتر از تمامی موارد قبل هست.

انتخاب کننده با ID:

این مورد بهترین و سریعترین در بین موارد گذشته میباشد.

اگر این کدهارو در مرورگرهای جدید اجرا و تست کنید با نتیجه ای شبیه به نمودار زیر مواجه خواهید شد. این نمودار نشون میده که انتخاب کننده بوسیله ID بسیار سریعتر از موارد دیگه هست:2015-09-21_23-12-50

دیدید که انتخابگر های متفاوت ، زمان متفاوتی رو برای اجرا شدن نیاز دارن و شما باید در استفاده از اونها نهایت دقت رو بخرج بدین تا بتونین سایتی بهینه داشته باشید.

امیدوارم از این مطلب خوشتون اومده باشه.

موفق و پیروز باشید

یا علی

Source

comment دیدگاه کاربران

نیاز به لاگین

برای ارسال دیدگاه و یا پرسیدن سوال خود در این قسمت، باید در سایت لاگین شوید.