loading...
مجله اینترنتی آفتاب
آخرین ارسال های انجمن
حامد ممتاز بازدید : 974 شنبه 28 آبان 1390 نظرات (1)

 

 

در درس قبل شما با تگهای موجود در سطرهای 1 ، 2 ، 3 ، 5 ، 7 و 8 آشنا شدید .
در سطر 6 از یك تگ HTML به نام IMG استفاده شده كه وظیفه این تگ نمایش تصاویر و عكس ها در صفحات وب است .
در سطر 6 ، src یكی از خصوصیات مهم و معروف تگ Img است كه آدرس فایل عكس را مشخص می كند .
و اما ONMOUSEOVER . این همان خصوصیتی است كه شما آن را در سطر 6 و در داخل تگ IMG می بینید . این عبارت همان كنترل كننده ماست كه وظیفه كنترل كردن ماوس در هنگام قرار گیری برروی شئ مورد نظر را دارد .
عبارت Onmouseover در لاتین به این معناست ، «زمانی كه ماوس روی آن قرار گرفت » .
بعد از علامت = و در داخل "" عكس العمل یا همان دستوریست كه ما می خواهیم در صورت قرار گرفتن ماوس انجام گیرد . در اینجا از دستور Alert استفاده شده كه صفحه ای برای كاربر باز كرده و متن داخل پرانتز را نشان می دهد .

 

در صورت قرار گرفتن ماوس روی عكس ، كاربر صفحه زیر را مشاهده خواهد كرد .
حال عبارت onmouseover ، یكی از خصوصیات (Properties ) این شی محسوب می شود .

توجه داشته باشید كه تحلیل كد ها در این زبان برنامه نویسی بسیار مهم است . مطمئن باشید كه اگر بتوانید كد ها را به خوبی برای خودتان تحلیل كنید در برنامه نویسی موفق خواهید بود .

روش سوم برای استفاده JS در صفحات وب ، بیشتر مورد توجه حرفه ای ها و مورد استفاده در پروژه های بزرگ است . در این روش شما برنامه های JS خود را در صفحه وب نمی نویسید بلكه آن را در یك فایل جداگانه و با پسوند js. می نویسید . تنها كاری كه شما باید برای استفاده این فایل JS بكنید این است كه آن را در صفحه وب مسیر دهی كنید .
تگ Link راه حل شماست !!! این تگ به شما كمك می كند كه فایل JS خود را مسیر دهی نمایید .
شكل كلی استفاده از این تگ به صورت زیر است .
دلیل اینكه این روش در پروژه های بزرگ استفاده می شود را در مثال زیر بررسی می كنیم .
فرض كنید شما باید سایتی طراحی كنید كه شامل 150 صفحه است و وظیفه دارید یك برنامه JS كه 10 كیلو بایت حجم دارد را در هر یك از این 150 صفحه بكار ببرید . با یك حساب سر انگشتی می فهمید كه با افزودن این برنامه 10 كیلو بایت به صفحات ، 1500 كیلو بایت یعنی یك و نیم مگابایت به حجم سایت شما افزوده می شود و این یك فاجعه است !!!!!!
در عوض شما می توانید به جای استفاده كل برنامه در هر یك از صفحات ، با استفاده از تگ یك خطی Link ، در تمام این 150 صفحه فقط فایل JS كه تنها 10 كیلو بایت حجم دارد را مسیر دهی كنید ؛ و این یعنی یك بهره وری خوب در حجم.همیشه به یاد داشته باشید بهره وری حجمی در صفحات وب و طراحی سایت وب بسیار بسیار مهم است .
در بخش بعد كنترل كننده های وقایع در JS و عملگرهای JS را برای شما تشریح می كنیم ..

متغییرها و عملگرهای JS
در ابتدا به مفهوم «متغییر» می پردازیم . در توضیحی بسیار ساده باید بگویم ، متغییر مانند یك جعبه می باشد كه بر اساس نوعش می تواند اشیاء و مقادیر مختلفی را در خود جای دهد .
طبیعی است كه هر یك از این جعبه ها باید برای خودش اسم خاص و منحصر به فردی داشته باشد تا از دیگر جعبه ها مجزا شده و قابل تمییز دادن باشد . متغییر ها نیز دقیقا حكم این جعبه ها را دارند ، مقادیر خاصی را می پذیرند و با نام خاصی از بقیه جدا می شوند .
و اما انواع متغییر ؛ یكی از معمول ترین و معروفترین نوع متغییر ها ، متغییر های عددی (numeric variables) هستند كه می توانند اعداد مختلف را بدون محدودیت رقمی در خود جای دهند . از این متغییر ها می توان برای اعداد اعشاری و منفی نیز استفاده كرد . برای مثال وقتی ما می خواهیم عدد 348/3242 را به متغییری به نام mark نسبت دهیم باید به این صورت ، عمل مقدار دهی را انجام دهیم :

mark=3242.348

نوع دیگری از متغییر ها در JS متغییر های رشته ای (string variables) هستند كه می توانند یك متن یا عبارت را در خود جای دهند به عنوان مثال اگر بخواهیم عبارت world wide web را به متغییر www نسبت دهیم به این صورت عمل می كنیم :

www="world wide web"

توجه داشته باشید كه باید در آغاز و پایان عبارت علامت " (quotation mark) را قرار بدهیم .

دانستن این نكته بسیار مهم است كه هیچگاه دو متغییر mark=3242.348 و "3242.348"=mark با هم برابر نیستند زیرا اولی یك متغییر عددی و دومی یك متغییر رشته ای است !!! پس هیچگاه از علامت "" برای متغییر های عددی استفاده نكنید .
نكته مهم دیگر این است كه نباید در قسمت نام متغییر از علامت فاصله (space) استفاده كنید به عنوان مثال متغییر w w w هرگز برای Java Script قابل قبول نیست و یك خطای برنامه نویسی محسوب می شود .
متغییر منطقی (Boolean variables) نوعی از متغییر است كه نسبت به بقیه انواع متغییر ها محدود تر است ، بدین معنی كه فقط دو مقدار TRUE (درست) و False (نادرست) را می پذیرد . از متغییر بولین (منطقی) اكثرا در نوشتن شرط ها در JS استفاده می شود .
و اما متغییر شئ (Object Variables) كه از انواع مهم متغییر هاست . این نوع از متغییر در اكثر برنامه های JS كاربرد دارد و در ان یك شئ یا اتفاق مربوط به آن شئ ذخیره می شود . مثلا وقتی می خواهیم شئ به اسم Core را در داخل متغییریبه نام Attribute جای دهیم بدین صورت عمل می كنیم :

Attribute=core



در پایان بحث مربوط به متغییر ها بهتر از به نكات بسیار مهم زیر توجه كنید :
زبان JS در تعریف نام متغییر ها به حروف بزرگ و كوچك حساس است یعنی هیچگاه متغییرهای Www ، WWW و www با هم برابر نیستند و JS هر یك را متغییری جداگانه می داند .
هیچگاه نام یك متغییر با عدد شروع نمی شود . در ضمن استفاده از نقطه (.) و علامت هایی چون @ و $ و % در نام متغییر جایز نیست . پس متغییر هایی چون 12fm و se.r و rt@r برای زبان JS بی معنی هستند .
برای نام یك متغییر نمی توان از كلمات رزرو شده JS مانند this ، comment ، case و بسیاری دیگر استفاده كرد . تعداد كلمات رزرو شده در JS زیاد است و من به مرور زمان به همه آنها اشاره خواهم كرد .
وقتی ما متغییری مانند "mark="world wide web را تعریف می كنیم در واقع مقدار world wide web را به متغییر mark نسبت می دهیم و تصور اینكه بر اساس این دستور world wide web با mark برابر است ، تصوری كاملا نادرست است .
برای هر كسی كه اندكی اطلاعات پیش زمینه برنامه نویسی دارد واضح است كه هر زبانی كه عملگرهای ریاضی چون جمع ، تفریق و غیره را نداشته باشد ، یك زبان ناقص بوده و فاقد یكی از اساسی ترین خصوصیات یك زبان برنامه نویسی است .
زبان JS دارای یكی از كاملترین علائم و دستورات ریاضی است كه از نقاط قوت این زبان به شمار می رود . توجه داشته باشید كه ما می توانیم توسط این عملگر ها بین دو یا چند متغییر یك یا چند عمل ریاضی را انجام داده و حاصل را به یك متغییر دیگر نسبت دهیم .
ساده ترین عملگر این زبان ، عملگر جمع است كه دارای نكات مهمی است . فرض كنیم دو متغییر به نام های m1=5 و m2=7 داشته باشیم كه هر دو متغییر عددی باشند . در این صورت می توانیم اندو را با استفاده از دستور زیر با هم چمع كرده و داخل متغییر d قرار دهیم :
d=m1+m2

در این حالت متغییر d دارای مقدار عددی 12 خواهد بود . نكته قابل توجه این است كه از جمع دو متغییر عددی ، متغییری عددی به وجود می آید .
حال فرض كنید دو متغییر m1 و m2 ی ما دارای مقدار رشته ای day و night باشند . در این صورت در مورد حاصل جمع آنها داریم :

d=m1+m2

در حالت جمع دو مقدار رشته ای ، مقدار حاصل برابر است با مقادیر دو متغییر در كنار هم ، یعنی مقدار dبرابر خواهد بود با daynight ، و همانطور كه مشاهده می كنید هیچ فاصله ای بین دو مقدار نخواهد بود. حتما به این نكته بسیار مهم توجه داشته باشید كه هیچگاه m1+m2 با m2+m1 برابر نیست زیرا همیشه در جمع رشته ای مقدار متغییر دوم بعد از مقدار متغییر اول قرار خواهد گرفت یعنی

r=m1+m2 پس : r=daynight
t=m2+m1 پس : t=nightday

ممكن است شما بخواهید یك متغییر عددی را با یك متغییر رشته ای جمع كنید . در این صورت یك مقدار رشته ای از جمع دو متغییر بدست خواهد آمد . مثال زیر مطلب آشكار تری در اختیار شما قرار می دهد .

P="javascript"
t=239
f1=p+t پس : f1="javascript239"
f2=t+p پس : f2="239javascript"

نكته قابل توجه دیگر این است كه در جمع دو متغییر منطقی ، مقدار TRUE برابر با 1 (یك) و مقدار FALSE برابر با 0 (صفر) محسوب خواهد شد .در واقع False را می توان دارای مقدار پوچ و True را می توان دارای مقدار كامل یعنی 1 در نظر گرفت . اگر هر دو متغییر True باشند حاصل جمع انها برابر 2 خواهد بود ، در صورت FALSE بودن هر دو حاصل برابر صفر و در صورتی كه یكی True و دیگری False باشد حاصل برابر 1 خواهد بود .
چون در این كلاس كاملترین مطالب و كوچكترین نكات در مورد مباحث مختلف JS ارائه می شود ، اتمام هر مبحث در یك جلسه امكان پذیر نیست پس ادامه بحث در مورد عملگر ها را به بخش بعد موكول می كنیم ...



متغییرها و عملگرهای JS قسمت دوم
دو متغییر عددی a=12 و b=7 را در نظر می گیریم . ما می توانیم عمل تفریق بین دو متغییر a و b را به دو صورت a-b و b-a انجام دهیم كه حاصل این دو با هم برابر نیست !

a-b=12-7=5
b-a=7-12=-5

بر خلاف جمع دو متغییر رشته ای ، تفریق دو متغییر رشته ای امكان پذیر نیست و در صورت تفریق ، در هر حالت ، حاصل برابر با رشته NaN به معنی Not a Number خواهد بود . این خصوصیت شامل تفریق یك متغییر رشته ای از عددی و بالعكس می باشد . با یك مثال بحث را روشنتر می كنیم .

فرض كنید دو متغییر رشته ای "www"a= و "net"b= را تعریف كرده ایم ، در هر دو صورت تفریق a-b و b-a حاصل برابر NaN خواهد بود .

a="www"
b="net"
d=a-b
f=b-a

در نتیجه : d=f=NaN
و در صورت داشتن یك متغییر رشته ای و یك متغییر عددی :

a=12
b="net"
d=a-b
f=b-a

در نتیجه : d=f=NaN
پس به این نتیجه كلی می رسیم كه هر گاه یك متغییر رشته ای _ در هر حالت _ در عمل تفریق وجود داشته باشد حاصل عبارت رشته ای NaN خواهد بود .
در تفریق متغییر های «منطقی» به مانند جمع متغییر های رشته ای ، True مفهوم 1(یك) و False مفهوم 0 (صفر) خواهد داشت . به مثال زیر توجه كنید :

a=true
b=false
c=a-b
d=b-a

در نتیجه خواهیم داشت : c=1-0=1 و همچنین : d=0-1=-1
در این مورد نیز a-b و b-a با هم متفاوتند .
حال عملگر ضرب را بررسی می كنیم . برای انجام عمل ضرب از * استفاده می كنیم . در این حالت می توان به ضرب دو عدد (چه صحیح و چه اعشاری) اشاره نمود كه به صورت زیر تعریف می شود .

c=a*b

بدین معنی كه متغییر a در b ضرب شود و حاصل به متغییر c نسبت داده شود . در مثال زیر به این مطلب اشاره شده است .

a=12
b=3
c=a*b
d=b*a

در نتیجه داریم : c=d=36
مشاهده كردید كه در ضرب تعویض جای اعداد تاثیری در جواب ضرب نمی گذارد یعنی a*b=b*a .
در صورت ضرب دو متغییر رشته ای یا یك متغییر رشته ای در یك متغییر عددی حاصل رشته NaN خواهد بود .پس نمیتوان متغییر رشته ای را در هیچ نوع متغییر دیگر ضرب نمود .
حال به ضرب متغییر های منطقی می رسیم . همانطور كه گفته شد ، true مفهوم یك و False مفهوم صفر دارد . در ضرب متغییر های رشته ای سه حالت پیش می آید :
در صورت ضرب دو متغییر منطقی True ، حاصل 1 خواهد بود .
ضرب دو متغییر منطقی false نیز حاصل صفر خواهد داشت .
در ضرب یك متغییر منطقی True در یك متغییر False ، جواب صفر بدست خواهد آمد .

پس به این نتیجه می رسیم كه در ضرب متغییر های منطقی فقط دو جواب 0و1 خواهید داشت و فقط در صورتی جواب برابر 1 خواهد بود كه هیچ متغییر False ی در ضرب شركت نداشته باشد.و اما عملگر تقسیم . عملگری كه می توان با استفاده از آن در JS عمل تقسیم را انجام داد « / » است . اولین موردی كه از این عملگر بررسی می كنیم ، حالت تقسیم دو متغییر عددی است .
فرض كنید ما دو متغییر با نام های number1 و number2 با مقادیر عددی 24 و 8 داشته باشیم.حال می توانیم عمل تقسیم بین این دو متغییر را به دو صورت number1/number2 و number2/number1 انجام دهیم كه در حالت اول نتیجه عدد 3 و در حالت دوم عدد 0.3333333333333333 خواهد بود .

نكته 1 : زبان JS در حالت اعشاری فقط تا 16 رقم اعشاری محاسبه می كند .

نكته 2 : در عمل تقسیم هر عددی بر عدد صفر ، حاصل برابر با رشته Infinity به معنی بینهایت خواهد بود .

در تقسیم یك متغییر رشته ای به یك متغییر عددی و بلعكس حاصل برابر با NaN خواهد بود . در تقسیم متغییر های منطقی ، حالت های زیر به وجود می آید .
در تقسیم یك متغییر منطقی True بر True حاصل برابر با 1 خواهد بود.
در تقسیم یك متغییر منطقی True بر False حاصل برابر با رشته Infinityخواهد بود
در تقسیم یك متغییر منطقی False بر True حاصل برابر با صفر خواهد بود
در تقسیم یك متغییر منطقی False بر False حاصل برابر با رشته Infinity خواهد بود

بخش مهم و اصلی عملگر ها در JS به پایان رسید ، تعدادی از عملگر های دیگر را در زمان نیاز شرح خواهم داد . در پایان سوالی را كه تعداد فراوانی از دوستان پرسیده بودند به همراه پاسخی كه داده ام در اینجا قرار می دهم .


ارسال شده در مورخه : دوشنبه،

ارسال نظر برای این مطلب

کد امنیتی رفرش
اطلاعات کاربری
  • فراموشی رمز عبور؟
  • لینک دوستان
  • انجمن روبوکاپ تالش
  • توپترین دانلود
  • آپلود عکس
  • اول دانلود-تبادل لینک
  • ویکی فارس
  • •●。゚♠زاخارستان♠゚。●•
  • سايت تفريحي سيستان
  • windows9
  • وب سایت دانشجوی ایرانی
  • دانلود انیمیشن های کوتاه
  • دانلود انیمیشن های کوتاه
  • بهترین ها را آرزو کنید
  • منسوجات مبل و پارچه
  • زعفران ناب
  • گوگل ایران،اولین بانک جستجوی هوشمندایران
  • گوگل ایران،اولین بانک جستجوی هوشمندکالا
  • گوگل ایران،اولین بانک جستجوی هوشمندکالا
  • هاست
  • کتاب الکترونیک
  • **بروزترین سایت دانلود آهنگ **
  • مرکز دانلود و اخبار روز
  • بزرگترین سایت موزیک و عکس
  • تبادل لینک
  • فروشگاه اینترنتی
  • تبادل لینک
  • تبادل لینک
  • تبادل لینک خودکار
  • فروشگاه اینترنتی
  • فروشگاه خرید اینترنتی
  • فروشگاه اینترنتی
  • تور تایلند
  • دانلود رایگان نرم افزار وبازی
  • دنياي دانلود
  • بزرگترین وب سایت تفریحی
  • پایگاه تفریحی و اطلاع رسانی فیس ایران
  • تاپ تاپان
  • سررشته تقدیر
  • .:: ۩۞۩ اپل دانلود ۩۞۩ ::.
  • ایران پی دی اف
  • رکسین-دانلود رایگان با لینک مستقیم
  • اچ پاتوق
  • انجمن نرم افزاری پی سی
  • رهایی از دنیا
  • موبایل, تبلت,لپ تاپ و...رایگان رایگان
  • دانلود قالب
  • دانلود فیلم
  • دانلود آهنگ جدید
  • آهنگ جدید
  • جک و لطيفه و اس ام اس
  • ◄◄◄ جدیدترین کدهای جاوا►►►
  • داکیومنت حامد(دنیای کامپیوتر)
  • متفاوت ترین سایت سرگرمی
  • شمارنده رایگان وبلاگ و وب سایت
  • ///کرج دانلود///
  • آگهی، نیازمندی و تبلیغات رایگان
  • عـکس. ابدیت افلاین .کلیپ. اس ام اس
  • نیازمندیها
  • فروشگاه اینترنتی
  • تور دبی تایلند مالزی ترکیه
  • تبلیغات در گوگل,تبلیغ در گوگل
  • خرید هاست
  • بيست دانلود
  • آمــــــوزش|دانلـــــود
  • فروشگاه اینترنتی مهاباد 1
  • دانلود سریال و آهنگ های روز
  • گالری رز پیک
  • google
  • میهن روز
  • پايان نامه هاي كارشناسي برق
  • دانلود-اهنگ-عکس-فیلم
  • لادری مثبت(دزدگیر و سیستم های حفاظتی)
  • پاداش
  • ♣هر عکسی میخوای بیا تو♣
  • نویز گرافیکـــ
  • ساخت رایگان بنر وتحویل فوری
  • برنامه نویسی
  • طراحی وب سایت
  • پایگاه سرگرمی پاتوق98
  • سایت تخصصی آندروید
  • پارس دانلود
  • دانلود فیلم های ایرانی و خارجی
  • درج آگهي ويژه 7 ستاره ارزان با تضمين بازديد
  • بازی آنلاین ماشین سواری
  • پارس پی اس دی
  • وبسایت تخصصی مهندسی عمران و معماری
  • اس ام اس عاشقانه
  • شرکت داده پردازان کاووش صبا
  • هرمزگان
  • آگهی رایگان
  • بازارکده
  • فروشگاه نوید آنلاین
  • خرید اینترنتی سریال های جدید
  • Used Engines
  • سایت تفریحی نایس تو نت
  • فروشگاه سنگهای معدني زينتي
  • کامروز.کام سایت مرجع
  • دانلود آلبوم - دانلود اهنگ
  • بزرگترین آپلودسنتر عکس و فایل
  • مردمکـــ
  • انجمن های گفتگو پادشاه ایرانی
  • سایت آموزشی تنیس باز
  • تاپ پاتوق
  • دانلود رايگان و سرگرمي
  • سایت موبایل اسکای
  • سرگرمي و تفريح
  • آموزش بورس ،دانلود رایگان کتابهای بورس
  • فروشگاه اينترنتي ايران آرنا
  • تبادل لینک سه طرفه
  • مجموعه جهانی،دانلود رایگان نرم افزار
  • کلیپ های ایرانی
  • used engines
  • خرید هاست حرفه ای
  • نیازمندیهای تی صد = تبلیغات رایگان
  • آموزش زبان انگلیسی
  • سیستم تبادل لینک هوشمند روز
  • سیستم همکاری در فروش پارسیس
  • تبادل لینک رایگان
  • سایت تبلیغات و آگهی
  • تبادل لینک
  • .:: ياس دانلود ::.
  • تبادل لینک
  • دایرکتوری تبادل لینک
  • تبادل لینک
  • face care
  • طراحی سایت
  • طراحی سایت شما با پرتال پارس
  • با 5000 تومان میلیونر شوید
  • آموزش شعبده بازی
  • اسمس های جدید روز
  • زود كليك كن تا فيلتر نشده
  • 7PSD - Download Free Psd Files
  • وب سایت کامپیوتر و الکترونیک
  • دانلود سریال جدید
  • قیمت روز خودروی شما
  • آخرین مطالب ارسال شده
  • لوگوی دوستان

    متفاوت ترین وب سایت سرگرمی
    بازدیدکنندگان
    آمار سایت
  • کل مطالب : 125
  • کل نظرات : 59
  • افراد آنلاین : 3
  • تعداد اعضا : 720
  • آی پی امروز : 43
  • آی پی دیروز : 68
  • بازدید امروز : 66
  • باردید دیروز : 156
  • گوگل امروز : 0
  • گوگل دیروز : 3
  • بازدید هفته : 336
  • بازدید ماه : 1,184
  • بازدید سال : 20,027
  • بازدید کلی : 641,461