>> خوب.
بنابراین، جاوا اسکریپت.
تقریبا همه در این اتاق احتمالا تا به برخی از درجه
راحتی با آن که آیا آن راه برگشت وقتی در SC50 بود
و یا آن شخصی بوده است پروژه های وب و یا حتی
اگر شما یک بیت از آن را با انجام این PHP پروژه پایه گذشته،
ولی برای بیشتر بخش، بسیاری از شما،
حتی اگر برخی از آسایش
با جاوا اسکریپت شاید گرفته نشده است
برای مسلم است که چگونه آثار زبان و آنچه می رود
در زیر هود و آنچه که ما در حال رفتن به را امتحان کنید
برای انجام این کار امروز است پوست پشت برخی از لایه های فنی
از آنچه جاوا اسکریپت است، چگونه آن را از یک زبان متفاوت است
مانند PHP، چگونه می تواند نه تنها سمت سرویس گیرنده
بلکه سمت سرور و پس از آن تمرکز بسیار به طور خاص
در این چارچوب، متوجه هیچ JS که اساسا زمان اجرا،
یک برنامه که شما با آن می توانید کد جاوا اسکریپت اجرا،
سمت سرور و آن را تبدیل شدن به مرتب سازی بر طور فزاینده ای محبوب
در قد و قامت همان این روز احتمالا روبی و PHP
و پایتون و شما خواهید دید
است که آن را تا به برخی از زیبا ویژگی های قدرتمند از طریق برخی از
از ساخته شده است در زبان سازه.
اما در ابتدا، برخی از آسان مسائل فقط به شما یادآوری
چگونه این زبان کار می کند و اگر شما دچار مشکل دیدن هر گونه
این، فقط فریاد و ما تنظیم کند.
بنابراین، یکی مثل در PHP وجود دارد هیچ مفهوم تابع اصلی،
شما فقط شروع به نوشتن کد
و شما می توانید پس تفسیر آن بالا به پایین.
در چارچوب یک مرورگر
و یا در سمت چیزی سرور ما چند نمونه را ببینید
در یک بیت.
شرایط، قواعد برابر با PHP و همچنین C،
C + + و برخی از زبان های دیگر بنابراین فقط به شما یک حس را
از ما چگونه ممکن است آن ساختار،
فقط یک استاندارد وجود دارد وضعیت.
عبارات بولی، دقیقا همان نحوی به عنوان شما را دیده ام
در آن مشابه دیگر زبان، هر دو برای اورینگ
و برای پایان دادن به همه چیز با هم.
جاوااسکریپت دارای سوئیچ ها، بسیار شبیه به PHP و دیگر کارهای
و شما محدود نمی شود، مانند در C به شکلهای هندسی اولیه انتگرال
مثل کاراکتر و نوع داده int می تواند در واقع گونه های دیگر از ارزش ها.
حلقه. بنابراین، این است که دقیقا به همان
و احتمالا دوازده زبان، در حالی که حلقه ها، در حالی که حلقه ها
و سپس این ترفند در اینجا.
بنابراین، این نوع از شناخته شده به عنوان شمارش سریع
و آن را یک راه بسیار هوشمندانه است از درست مثل در PHP انجام
برای هر یک FU به عنوان نوار شما می توانید به طور مشابه،
در یک شی جاوا اسکریپت، که در آن شی به نام است
از متغیر در اینجا، می گویند، ور من در جسم و در هر تکرار
از این حلقه، من است رفتن به یکی
از کلید های که از آن شی.
بنابراین، اگر شما یک شی برای دانشجو و دانش آموز ID است
و یک نام و یک خانه، تکرار من را
از ارزش ID و نام و خانه و شما می توانید لذا شاخص
به شی به عنوان اگر آن را آرایه ای با استفاده از براکت
نماد برای بدست آوردن مقدار از ID کلیدی یا نام
و یا خانه و غیره.
و بر خلاف معمول فرض، جاوا اسکریپت اشیاء،
خواص نیست لزوما تضمین می شود
در همان جهت، این نیز درست به PHP بنابراین فکر نمی کنیم
که همه چیز خواهد ماند در همان جهت
که شما قرار دادن آن کلید جفت ارزش را به یک شی.
چگونه در مورد آرایه؟
یک زن و شوهر از راه وجود دارد. به آن ارسال نحوی
اما این است که احتمالا بیشتر مشترک مربع در حال حاضر تنها با استفاده از
نماد براکت.
بنابراین، این یک متغیر به است اعداد حاوی آرایه تماس بگیرید
شش اعداد صحیح وجود دارد، در اینجا یک رشته ساده است
و متوجه چه چیزی وجود ندارد از این نمونه ها،
چه جاوا اسکریپت است ظاهرا وجود ندارد.
آره. بنابراین، هیچ اندیشه ای وجود دارد از تایپ کردن، قطعا
در این زمینه در اینجا، اما این در واقع یک رشته است.
بنابراین، جاوا اسکریپت انواع و بود که در واقع یک آرایه
یک نوع است که خود را و هر یک از عناصر
در آن آرایه ای از نوع بودند تعداد عنوان جاوا اسکریپت را خواستار آنها را.
بنابراین، این یک نوع بی قاعده زبان و خواهیم دید
که جاوا اسکریپت مانند PHP یک اپراتور هویت
و مکانیزم های دیگری برای در واقع چک کردن چه نوع
برخی از متغیر است هر دو برای بررسی خطا
و برای برنامه های کاربردی دیگر.
و در اینجا یک جسم مثالی است حاوی فقط یک ID و یک نام.
و در حال حاضر، توجه کنید که ما با استفاده از نماد آکولاد،
دندانه و سفید فضا به نوعی بی معنی
و این اعلام کرد متغیر که نام راب است
و که ID 1 است و نوع تاریخ است که در اینجا تعدادی ما
و رشته بود.
و پس از آن این است چیزی کمی متفاوت
اگر شما همیشه هر چیزی را انجام داده ام با آژاکس این روزها؟
شما احتمالا استفاده یک شی شبیه به این
اما آنچه که شایان ذکر است که اینجا هستید؟
چه نحوی همیشه خیلی متفاوت، فقط یک زن و شوهر
از همه چیز بین این مثال که مسلما کوچکتر
و این مثال بزرگتر.
بنابراین، برای اولین بار در شخص غیر روحانی است مدت، این چیست؟
نوع چیست کارکنان را به شما می گویند؟
OK، آن را به یک آرایه است، آن را به مجموعه ای از چیست؟
>> اشیاء.
>> OK، آن را به مجموعه ای از اشیاء است.
و در حال حاضر، تمرکز بر روی تنها یک - هر یک از این اشیاء،
آنچه متفاوت است بین این و این؟
>> کلید رشته می باشد.
>> آره. بنابراین، کلید رشته ها،
و این کلیدها در واقع رشته ها در هر دو مورد
و این نوع از ساده لوحانه است
به نظر طراحی تاریخی من تصمیم هر زمان که شما با استفاده از
JSON، جاوا اسکریپت نشانه گذاری شی،
است که در اصل فرمت های حمل و نقل
برای ارسال داده ها به طور معمول در سراسر شبکه
بین کلاینت و سرور، شما باید به خاطر داشته باشید
که این است که در واقع نه معتبر JSON و این یکی است
از این FYIs مگر اینکه شما تا به حال انفجار سر خود را به دیوار
برای چند دقیقه بدون هیچ خوب دلیل، آن را معتبر JSON نمی
به این دلیل که کلید ها در واقع نقل نیست.
JSON به طرزی احمقانه مستلزم آن است که کلید نه تنها نقل قول شود،
اما آنها مضاعف به نقل از، نقل قول تنها پاسخگو نیستند.
بنابراین، چیزی که کمی احمقانه و بیشتر از یک واقعیت سرگرم کننده
برای اهداف امروز اما این بیش از حد خواهد بود معتبر جاوا اسکریپت
این تنها نیست - قضیه درست نیست.
بسیار خوب.
بنابراین، ما مقدار زیادی ببینید بیشتر از آن.
بسیار خوب.
بنابراین، آن جاوا اسکریپت است نحوی احتمالا بسیار
آشنا، هر کدام از شما که هرگز قبل از جاوا اسکریپت استفاده می شود
آن را یک جهش بزرگ از PHP نمی و یا بیشتر به هر زبان رویه ای
که شما ممکن است مورد استفاده قرار گیرد.
بنابراین، امروز ما تمرکز بر روی جنبه های جالب
از جاوا اسکریپت ویژه در چارچوب هیچ JS
اما نه منحصرا به دلیل تا اکنون شما احتمالا،
اگر شما استفاده از جاوا اسکریپت، آن را در داخل یک مرورگر استفاده می شود.
بنابراین، هیچ JS یک محیط است سپس در کمی در جریان است
به ما اجازه می دهد برای دسترسی به جاوا اسکریپت سرویس گیرنده کد -
سمت سرور، اما برای اولین بار، اجازه دهید یک نگاه
در چیزی است که سمت سرویس گیرنده کمی بیشتر است.
بنابراین، من در رفته است و این مرتبط در وب سایت دوره ها،
اگر شما می خواهید به بازی همراه، دو زیر شاخه وجود دارد
در فایل های فشرده امروز به نام منبع نشون در وب سایت فایل های فشرده
و این تنها نمونه چند یادآوری
از چیزهایی که ممکن است را دیده اند، قبل و من مرتب از آنها ساخته شده است
از ساده ترین تا کمی پیچیده تر به کسی را دست انداختن
برخی از ویژگی های از جاوا اسکریپت.
بنابراین، اجازه دهید پیش بروید و به عنوان مثال نگاهی به این.
بنابراین، متاسفانه برچسب زدن بود چند سال پیش کشته شدن
به عنوان راه کردم زیباتر و زیباتر
و برچسب زدن به معنای واقعی کلمه بود براکت باز چشمک زدن براکت نزدیک
و آن را نوعی از هیچ دیگر با ما.
اما، ما هنوز هم می تواند زنده این ایده از یک تگ تنها با نوع
از فکر کردن درباره آن منطقی، چگونه می توانم شما را به
در مورد ساخت چیزی شبیه به این چشمک زدن به طور مستقیم؟
فرض کنید که یک کمی کمی از جاوا اسکریپت و یا CSS
در این نقطه، آن را OK اگر شما نمی کنند.
>> تنظیم یک زمان و پنهان کردن و سپس آن را پس از من آن را به برچسب
و دوباره نشان می دهد.
>> آره، کامل است.
این نوع برنامه نویسی 101،
چگونه می خواهید دستیابی به اثر بصری شبیه به این؟
خوب، شما به نحوی باید برای نشان دادن چیزی
و پس از آن پنهان کردن چیزی، نشان می دهد چیزی، پنهان کردن چیزی
و به عنوان جاناتان پیشنهاد با استفاده از نوعی از زمان،
نوعی از برنامه می توانید انجام دهید این بارها و بارها بدون نیاز
برای استفاده از یک حلقه و یا چیزی شبیه به آن.
بنابراین، اجازه دهید من به چشمک زدن-0.html بروید
و اجازه دهید من کوچک که قلم کمی
به طوری که بیشتر از این جا می گیرد.
و اجازه دهید یک نگاه در چه خبر است اینجا.
بنابراین، اول از همه، توجه کنید که بدن
از این صفحه فوق العاده است ساده، در داخل بدن
از صفحه فقط یک div است.
I خودسرانه داده ام ID تبریک
و که می تواند هر چیزی تا زمانی که آن را منحصر به فرد
و پس از آن من فقط برخی از متن ساده، سلام جهان است.
بنابراین، اگر من در حال حاضر رفته بالا، برخی از یک ظاهر طراحی شده کرکی.
بنابراین، من می گویم، تیز تبریک، که همانطور که می دانید
در CSS به معنی منحصر به فرد شناسایی عنصر
با ایده های تبریک،
اندازه فونت است که خودسرانه است این، حاشیه و متن تراز.
بنابراین، غیر جزئیات زیبایی
به حدود وسط متن.
بنابراین، بخش جالب توجه است در اسکریپت برچسب در اینجا
که من اتفاق می افتد به قرار دادن در داخل سر صفحه استفاده کنید.
بنابراین، بررسی قرار - می توانید انجام دهید این در هر تعداد از راه
و ما به چند را ببینید تکرار این برنامه همان
اما اجازه دهید از بالا شروع می شود.
بنابراین، من اعلام کرده ام تابع به نام چشمک
و ظاهرا آن را از این با استفاده از ساخته شده در روش DOM نام
getElementById است که شاید یکی از روش های قدرتمند تر
که شما از جعبه دریافت کنید با دنبال جاوا اسکریپت برای
"تبریک" را ندارد به است نقل از دو برابر آن را دوست شد
در HTML است یا خوب است تا زمانی
که شما می توانید سبک سازگار این روزها من به جرات می گویند
بسیاری از مردم استفاده از جاوا، نقل قول تنها در جاوا اسکریپت،
نقل از دو برابر در HTML اما آن واقعا مهم نیست
تا زمانی که شما سازگار است.
بنابراین، در اینجا اگر شما آشنا نیست، شما می توانید در واقع دسترسی به
با جاوا اسکریپت CSS خواص در عناصر.
بنابراین، توجه کنید که من اعلام یک متغیر به نام دیو
و ذخیره شده در داخل از این متغیر،
اشاره به هر که عنصر DOM است.
بنابراین، اگر شما فکر می کنم به CS50 یا هر کلاس که در آن شما فکر می کنید
در مورد ساختارهای درختی و DOM، سند مدل شیء،
این فقط یک مرجع است به یک گره در درخت،
است که نشان دهنده این صفحه
و اگر div.style.visibility اموال برابر با، برابر، برابر،
پنهان، پس از آن من فقط می خواهید یک ضامن آن
به عنوان جاناتان پیشنهاد در غیر این صورت من می خواهم
به آن حالت را به پنهان است.
در حال حاضر، به عنوان در سمت، به همین دلیل سه برابر وجود دارد؟
و یا چه چیزی است که در مقابل برابر دو؟
>> معادل دقیق.
>> متاسفم.
>> معادل دقیق.
بنابراین، این اپراتور هویت
که در آن توسط شما را بررسی نمی تنها مقدار متغیر
به عنوان یک حس برابر بلکه به نوع آن.
بنابراین، حتی اگر ما ندارد مشخص شده این دور هر گونه اطلاعات
نوع برای هر متغیر در این و یا هر یک از اسلاید،
یک نوع ارتباط وجود دارد با این رشته پنهان
با ارزش، پنهان و است که از رشته البته.
بنابراین، در این مورد، واقعا مهم نیست
چون هیچ راهی وجود دارد ما در حال رفتن به تلفیق یک رشته
«پنهان» با برخی از ارزش های دیگر
اما این است که اغلب خوب عادت من می گویند برای به دست آوردن
به استفاده از برابر با، برابر،
علامت مساوی است به طور کلی چیز خوبی است.
آن را به کد خود را قوی تر هر دو در PHP اما
و در جاوا اسکریپت چرا که شما اجرا
به گاهی موارد گوشه که در آن ارزش ممکن است صفر
که شما برای چک کردن و صفر را می توان با نادرست تلفیق شدهاست
و یا می تواند بدون و به عنوان در PHP،
جاوا اسکریپت بیش از حد می تواند به چند دارند ارزش ها به دروغ که در آن توسط صفر
و نادرست و باطل و تعریف نشده می توانید تمام حل و فصل به طور ضمنی
به نادرست است.
اما اگر شما واقعا مایل به برای ارزش خاص بررسی
مانند صفر، تعداد، و یا غلط بولی و سپس شما را
برای استفاده از این عملگر هویت.
بنابراین، این می تواند رخ دهد برای به دست آوردن به هر حال حتی اگر در اینجا،
این نوع بی معنی چون ما می دانیم که ما در حال بررسی
برای یک مقدار رشته ای و آن را برای رفتن به هر چیز دیگری.
بنابراین، در اینجا سحر و جادو پس از آن، اگر من در اینجا پایین به این خط،
ظاهرا، ساخته شده است به شی پنجره
و این یکی از ویژگی های است مرورگر شما می توانید دسترسی به
این فوق العاده جهانی شی به نام پنجره،
در داخل آن است برخی از قابلیت های،
اگر قطعه ای از آن قرار است فاصله
و آن طول می کشد ظاهرا چه نوع از استدلال؟
آره.
>> تماس با تابع و یک زمان.
>> خوب. بنابراین، یک تابع تماس بگیرید و یک زمان
و غیره ویژه مرجع به یک تابع،
یک اشاره گر به تابع به یک معنا
و تابع که رفتن
به اعدام هر تعداد میلی ثانیه و در این مورد،
آن را در هر 500 میلی ثانیه.
بنابراین، آن را راهی برای القای است به طور موثر و حلقه بی نهایت
بدون استفاده از تکرار اما به جای گفتن جاوا اسکریپت
به موتور در داخل مرورگر
برای انجام این کار هر 500 میلی ثانیه و یا نزدیک است
به 500 میلی ثانیه به عنوان آن می تواند،
معلوم است که در زیر هود،
این چیزی است که یک رویداد به نام وجود دارد حلقه و ما به این می آیند
در متن گره JS که فقط به طور مداوم به نوع
نشستن وجود دارد، نخ ریسی، منتظر کار باید انجام شود
و به محض تحقق آن،
500 میلی ثانیه گذشت چشمک زدن خواهد دوباره به نام
و دوباره و دوباره است در کنار هر کار دیگر
که باید انجام شود.
بنابراین، آنچه که می تواند ما را در اینجا بهبود؟
خوب، اجازه دهید من باز تا چشمک زدن-1.html
و نشان دادن گردش-1.html
به عنوان زیبا کاملا یکسان است.
بنابراین، آنچه می تواند ما اینجا را بهبود بخشد؟
خوب، متوجه است که آن را نوع بی فایده بود
برای تعریف یک تابع به نام چشمک زدن چون که چگونه بسیاری از
در چگونه بسیاری از مکان ها بود I تماس بگیرید چشمک زدن تابع؟
>> فقط یک بار.
>> بنابراین، یک.
بنابراین، آن بود بد نیست، در واقع آن را احتمالا بسیار
مستقیم به جلو.
I تعریف چشمک زدن تابع، I تماس بگیرید چشمک زدن تابع از طریق
از این پارامتر، اما از نظر فنی،
بود علت وجود ندارد آن و یک الگوی مشترک
در جاوا اسکریپت است که در واقع استفاده از توابع لامبدا
به عنوان ممکن است شما را از یاد می آورند 51 و یا توابع بی نام
که در آن اگر شما لازم نیست یک نام برای یک تابع،
اگر شما فقط آن را خواستار قطعا در یک مکان،
چرا زحمت به هم ریختن کد خود را، به هم ریختن ذهن برنامه نویسان
و فضای نام شما واقعا با کاراکتر
که شما واقعا نمی باید در مورد مراقبت.
و به این ترتیب، در این نسخه در اینجا،
توجه کنید که من خواستار window.SetInterval مستقیم
در بالا بسیار از من برچسب اسکریپت، پس از آن من عبور
در یک تابع بی نام که بدون آرگومان می گیرد
و این کاملا خوب و پس از آن در بدن
از این تابع به نظر می رسد است یکسان است به آنچه قبل از آن بود
و تنها نحوی تفاوت در حال حاضر است
در اینجا در کنار 500.
من بسته شدن بدن از تابع
و پس از آن من گفت: اجرا که کد قبلی،
هر 500 میلی ثانیه.
تغییرات بنابراین، بسیار حاشیه
بلکه قدمی به سوی چه احتمالا بیشتر زیبا
اجرای این.
بنابراین، اجازه دهید این یکی گام به گام به علاوه اگر من در حال حاضر به
به چشمک زدن دو، نظر شما دیدن یک کتابخانه مشترک،
اثر آن در جریان است
به طور کامل بی اهمیت زیبا اما اگر ما به
به نسخه دو در اینجا، توجه که در بالای سر من،
من شامل آخرین نسخه از jQuery.
و سپس، در اینجا، من فقط تمیز
تا کد کمی، آن را برای رفتن به یک دنیای سرگرم کننده
به ادامه با استفاده از توابع DOM مادری
و نوع خام جاوا اسکریپت.
در واقع، JQuery و به عنوان شما ممکن است می دانیم تبدیل شده است تا محبوب
که اکثر مردم فقط جنگ جی کوئری با جاوا اسکریپت
اما واقعا فقط یک شام کتابخانه مفید نوشته شده است
توسط یک شخص به نام جان Resig و از دیگران
که فقط باعث می شود یک بسیاری از مسائل خسته کننده
در جاوا اسکریپت آسان تر و موجز است.
بنابراین، در این مورد اینجا چه خبر است؟
بنابراین، من این ظاهر علامت دلار، بیشتر در
در یک لحظه، و سپس این یک انتخابگر CSS است.
بنابراین، آن را در بسیار شبیه روح به آنچه که من قبل از انجام،
اما این بار، من هستم به معنای واقعی کلمه با استفاده از تگ هش
نشان می دهد منحصر به فرد شناسه به نام تبریک
و پس از آن ظاهرا . CSS روش ساخته شده است
به هر شی این است که من فقط ایجاد
و من چک کردن مقدار از کلید دید.
و اگر ارزش آن کلیدی برابر با، برابر، برابر، مخفی،
پس از آن من قصد دارم به آن ضامن و من قصد دارم آن را تغییر دهید این زمان
با استفاده از همان روش که ظاهرا بیش از حد است
به این معنا که آن را تا به دو امضاء های مختلف،
یک با یک آرگومان و یکی با دو آرگومان،
نقش دوم که گذارنده است،
که اولی است دریافت کننده پس به صحبت می کنند.
و اگر کنجکاو و اگر شما می در واقع هرگز در این نگاه،
اگر ما به jquery.css امیدوارم آمار بالا است که در واقع این
و شما می توانید بیشتر نگاه کنید توضیح رسمی
که ما فقط استفاده از این، . CSS با نام اموال
و پس از آن گذارنده نقطه CSS است
با نام اموال و یک مقدار.
بنابراین، در حاشیه پاک کننده، اما توجه به نوع الگوی در اینجا
در هر تکرار از این کد،
ما در حال مرتب کردن بر اساس ساخت آن را تنگ تر و تنگ تر و تنگ تر
و می گویند طرح بهتری وجود دارد
از آنجایی که ما با استفاده از کسی کد دیگری که حذف
برخی از پیچیدگی.
بنابراین، اکنون بیایید این حتی ساده تر.
و در واقع، اگر حذف کنم همه نقل قول شما فقط همه را ببینید
نظر شما خواهید دید که چگونه ساده این است بدست.
یک تفاوت در اینجا البته
که من با استفاده از یک ضامن روش که آن هم ساخته شده است می آید
در کدها به jQuery و این فقط
زیرا شخص دیگری کد نوشت
که در واقع پستی تنظیم دید
از هر عنصر DOM که شما آن را ارسال کنید.
بنابراین، بهتر و بهتر.
و به این ترتیب، این یک الگوی است،
حتی اگر این شام است مثال ساده و مرتب سازی بر
اثر خالص احمقانه که یک قطعه پلک زدن از متن است،
آن است که نوعی تفکر فرآیند است که شما باید فکر می کنم -
در مورد فکر نمی لزوما اول
نوشتن منفعل چیزی برای پروژه های آینده
اما مطمئنا به شما به عنوان تکرار با مشاور خود و یا با من
و جلسات تیم شما و یا شما فقط فایل نقد می نویسید کد هم تیمی های شما
در مورد سفت کارها، درست است؟
پس از همه، آنها کمتر است -
کمتر از خطوط کد شما در نهایت باید
در تئوری اشکالات کمتری شما به احتمال زیاد به دعوت شود
چرا که به سادگی وجود دارد کد کمتری به یک ظرف غذا با.
بسیار خوب.
بنابراین، زن و شوهر از takeaways.
توابع لامبدا، توابع بی نام،
که بسیاری از آنها به شما قبل از دیده می شود
و پس از آن نیز فقط به سفت همه چیز با یک کتابخانه
مانند jQuery را در این مورد خاص.
بسیار خوب.
هر گونه سؤال؟
اجازه دهید به یک دیگر انجام مشتری سمت جنبه در اینجا،
در صورت صفر ما این اثر خالص.
فرم فوق العاده ساده و ظاهرا اگر من سعی می کنم با کلیک بر روی ثبت نام در اینجا،
در ابتدا آن را به من می گوید شما ثبت نام، به خوبی، نه واقعا.
خوب، این است که چرا؟
خوب، در اینجا فرم 0.html است کد بسیار کمی،
بدون جاوا اسکریپت ندارند و آن را به طور کامل یک نوع جعلی
فرم به دلیل عمل ارزش registered.html است
که به معنی بدون توجه به آنچه من به این شکل تایپ کنید،
که در آن است که آن را به قصد بر روی سرور فرستاده می شود؟
آره. بنابراین، به registered.html است که به وضوح یک فایل HTML
است که در نتیجه شخص فایل است که به هیچ وجه
گرفتن ورودی کاربر با فرض هیچ کد جاوا اسکریپت وجود دارد
تعبیه شده در آن است که جستجو در URL
پس این است که به طور کامل NOOP و که هیچ چیز اتفاق خواهد افتاد
با داده های ارائه شده، اما شما می توانید ساختار را ببینید
از یک فرم HTML5 نسبتا ساده
است که چند رمز عبور، انواع ورودی چند.
بنابراین، اجازه دهید در واقع در حال حاضر اضافه کردن برخی از چک کردن خطا
و ببینید که چگونه ما ممکن است بهبود این.
بنابراین، در اینجا نوعی ضعیف راه انسان از اجرای این
و آن را نوعی تکه های تند و زننده از کد.
اسکرول بنابراین، اول اجازه دهید به پایین
برای دیدن آنچه که همان و چه چیزی متفاوت است.
تنها چیزی که متفاوت در حال حاضر بین این
و نسخه های قبلی است که I شکل و ID داده ام
از "ثبت نام" می تواند هر چیزی است که من می خواهم
اما به معنای آن منحصر به فرد است شناسایی حتی که نیست
به شدت لازم است، زیرا اگر صفحه فقط یک فرم قطعا من
می تواند آن را با یکی از پیدا کردن روش انتخاب jQuery را.
اما این روش فقط باعث می شود آن قطعی است.
بنابراین، اگر من تا به حال به من اسکریپت برچسب، متوجه زیر،
برابر window.onload یک تابع بی نام.
بنابراین، آنچه که انجام این کار؟
بنابراین، شما ممکن است به یاد آورید که در برنامه نویسی سمت سرویس گیرنده -
جاوا اسکریپت به جای صفحات HTML اند وقایع مختلف مرتبط
با عناصر، کلیک و ارسال و تمرکز
و مات و دیگر رویدادی که می تواند رخ دهد
به عنوان یک کاربر به طور معمول تعامل با صفحه،
window.onload آن را می گوید.
در پنجره کل بارگذاری
بنابراین یک بار تصاویر بوده است یک بار دانلود تمام فایل ها
دانلود شده است و یک بار صفحه پر شده است،
انجام کد زیر، و توجه اگر من به انتهای صفحه تغییر دهید
از این روش، توجه کنید که هیچ پرانتز وجود دارد
بعد از آکولاد است که می گویند
که من اجرا نمی شود این تابع در اینجا در حال حاضر،
مرورگر است که به اجرا آن را برای من زمانی که آن را تعیین کرده است
که صفحه لود شده است.
بنابراین، اجازه دهید ببینیم که چه چیزی ما انجام داده ایم،
document.getElementById ثبت
به طوری که فقط به من می دهد اشاره گر به گره
در درخت که از تا ID از ثبت نام.
و در حال حاضر، من قصد دارم برای ثبت نام اینجا یکی دیگر از رویداد
با انجام form.onsubmit می شود این تابع ناشناس
که به معنی به شرح زیر است کد باید اجرا هر زمان
که فرم ارسال می شود.
در حال حاضر، بسیاری از این تنها نوع خسته کننده منطق.
بنابراین، اگر مقدار درست است ایمیل در فرم است
"هیچ چیز" پس شما باید ارائه آدرس ایمیل خود را،
شما در کاربر با فریاد زدن هشدار و سپس بازگشت نادرست است.
و پس از آن من دسته دیگر چک،
چک برای رمز عبور،
چک اگر کلمه عبور هستند،
چک اگر مورد جعبه چک چک می شود یا نه
و من فقط در داد کاربر در صورت وجود
از این تست در واقع شکست.
و بنابراین، در اینجا به عنوان مثال حتی است هر چند آن را کمی ساختگی
در اینجا این واقعیت است که من با استفاده از برابر با، برابر، برابر،
بدان معنی است که کاربر نمی توانید سعی کنید به من فوت و فن
با تایپ کردن در چه مقدار است.
و یا به جای من واقعا هستم برای چک کردن وجود
از رشته خالی، کاربر تا به هر چیزی تایپ نشده است.
اگر کاربر تایپ به معنای واقعی کلمه صفر،
"صفر" به طور بالقوه می تواند با رشته خالی اشتباه گرفته شود.
و من می گویم این نوع از بی معنی در اینجا
زیرا بدیهی است که حتی صفر است یک آدرس ایمیل نیست.
اما اگر این بود حوزه های عمومی مانند یک فیلد متنی
و یا یک نام یا یک توضیح و یا چیزی است که شما می خواهید به ارزش
و آن را لزوما نحوی دارند
به یک آدرس ایمیل، کاربر چیزی شبیه به صفر می تواند نوع
و دوباره مورد گوشه اما این به همین دلیل به طور معمول چک کردن نوع است
یک چیز مفید است.
شما واقعا برای چک کردن کاربر پس از هیچ چیز تایپ
به این حوزه.
بنابراین، چه اتفاقی می افتد اگر هیچ کدام از این تست شکست، به خوبی،
بازگشت درست در داخل یک رویداد
مانند onsubmit فقط بدان معناست اجازه رفتار های اصلی در واقع
انتشار و در نتیجه فرم دریافت ارائه خواهد شد.
و به همین دلیل زمانی که من در نهایت کلیک تسلیم قبل از من
از طریق به register.html و اگر من انجام این کار در حال حاضر، اطلاع،
من در اگر من نمی فریاد زد: ارائه یک آدرس ایمیل
و I می توانید نوع در malan@harvard.edu،
قرمز [آوایی]، قرمز، چک کردن جعبه،
و در حال حاضر ثبت نام و آن را به من می گوید، دوباره،
شما ثبت نام و یا نه واقعا.
بسیار خوب.
بنابراین، اجازه دهید این پاک کردن فقط یک کمی و سپس انتقال
به جدیدتر جدید چیزهای سمت سرور.
بنابراین، اگر من به صورت-2.html بروید، متوجه چند چیز.
بنابراین، یکی، من به ارمغان آورد جی کوئری برگشت به مخلوط
این کار وجود دارد دوباره است این علامت دلار
و در حال حاضر من با استفاده از برخی از روش های جی کوئری.
بنابراین، برای اولین بار، آنچه در آن است در مورد علامت دلار که
بسیار ویژه ای در اینجا؟
چه علامت دلار laced است در طول بیشتر از هر کد جی کوئری؟
آره.
[نکته نامفهوم]
OK. بنابراین، تابع علامت دلار می رود از طریق DOM به دنبال
برای چیزی با این خاص انتخاب CSS.
بنابراین، درست است، اما تقریبا بیش از حد دقیق است.
این چیزی است که اتفاق می افتد زمانی که شما در یک رشته عبور
در این مورد، اما به شما نمی کنند همیشه باید به تصویب در یک رشته است.
در واقع، مورد، بسیار خط اول در اینجا است که از این نمی باشد.
انتخاب CSS، من عبور در یک تابع لامبدا.
بنابراین، به طور کلی - چنین است، پاسخ خوب است اما بیش از حد دقیق است.
به طور کلی، آنچه است علامت دلار نشان دهنده؟
>> فقط از jQuery.
>> آره. بنابراین، فقط از jQuery و یا آن را فقط به یک تابع
که چند سال پیش مرد نوشت و افراد دیگر
از سال افزایش یافته است که به معنای واقعی کلمه به طور پیش فرض نامیده می شود -
اوه، است که به نام جی کوئری.
این فقط - به نظر می رسد از بر خلاف بسیاری
نشانه زبان دلار است نماد کاملا معتبر به استفاده از
در نام یک متغیر است در حالی که
در علامت دلار PHP واضح است که معنی خاص
اما در جاوا اسکریپت مانند در برخی از زبان ها، علامت دلار
و تأکید و دیگر کاراکترهای خاص کاملا حلال
برای استفاده در نماد خود را نام برای متغیر.
بنابراین، کسی که فقط تصمیم که، می دانید چه؟
این خواهد بود بسیار خسته کننده
را به تمام جهان نوع جی کوئری تمام وقت،
اجازه دهید من نوعی بوته خطر در زمین و می گویند،
"این کتابخانه استفاده از علامت دلار. "
و در واقع، این می کند افزایش خطر
که شخص دیگری مغرورانه در حال رفتن به استفاده از علامت دلار
برای کتابخانه خود را اما این راه به نوعی از بیمه وجود دارد
که زمانی که شما با استفاده از دلار ثبت نام در این کدها به jQuery نقشه
زیرا شما می توانید امتحان کنید آن را در حال حاضر اختصاص داده شده است
به چیز دیگری اساسا.
بسیار خوب.
بنابراین، این همه که است، هیچ سحر و جادو وجود دارد.
این فقط یک علاقه به دنبال است قطعه ای از ترکیب نحوی است که به خوبی
و سریع و آسان به نوع.
بنابراین، چه اتفاقی می افتد زمانی که شما نوع علامت دلار پرانتز باز
و سپس یک تابع بی نام.
خب، معلوم است که این نماد در واقع مختصر
برای سند نقطه پرانتز باز آماده.
بنابراین، به عنوان سینتیا متوجه قبل از آن ما در حال حاضر در بر داشت یکی
مورد گوشه.
اگر شما فقط عبور در تابع لامبدا،
اثر دلار ورود به سیستم کمی متفاوت است.
در واقع، آنچه واقعا اتفاق می افتد است که آن را معادل این،
عبور در اشاره به شی سند جهانی
که جهانی است درست مثل شی پنجره است
که به شما می دهد برخی از قابلیت های ویژه
که کل صفحه را تحت تاثیر قرار و یا مرورگر و آن را تبدیل
از آن سند در زمانی که شما آن را بسته بندی با jQuery،
جی کوئری اساسا متوجه، آه، این مرجع می باشد
به آن شیء سند خاص،
اجازه دهید من در حال حاضر ثبت نام کنترل رویدادها را آماده نام
که بومی نشده است جاوا اسکریپت و DOM مربوط.
آماده jQuery است چیزی که می گوید:
زمانی که صفحه لود شده است همه عناصر HTML
اما لزوما لود نیست، همه از CSS و تصاویر
و فایل های جاوا اسکریپت و فایل فلش و دوست داشتن.
بنابراین، آن را یک گام به پیش است در بار پس از آن پیش بروید
و موارد زیر را اجرا کند.
و حرکت صعودی از استفاده در آماده معنی این است که شما می توانید، شما می دانید،
که تمام عناصر در DOM خود را،
همه از منحصر به فرد شناسایی همه چیز با شناسه های آنها وجود داشته باشد حتی
اگر صفحه، محتویات آن را هنوز بارگذاری و بارگیری
و شما باید برخی از آیکون های شکسته برای لحظه ای
و یا صفحه سفید در پس زمینه.
آره.
>> چه اتفاقی می افتد اگر [نامفهوم]؟
>> نمونه کامل، یک سوال کامل است.
بنابراین، اجازه دهید اگر ما می توانید ببینید شبیه سازی این در حال حاضر.
بنابراین، اجازه دهید به جلو و حذف این دو خط اینجا و پس از آن
بدون مزاحم به رفع دندانه، به من اجازه پیش بروید
و حذف این را در اینجا - اوه، این یکی را در اینجا.
و در حال حاضر، به من اجازه رفتن را به صفحه، به صورت-2.html و نوع بروید
در ثبت نام، هیچ چیز به نظر می رسید اتفاق می افتد، اجازه دهید بگویم، به همین دلیل بود که،
اجازه دهید به جلو و باز کردن تا بازرس کروم،
باز کردن کنسول فقط برای دیدن اگر هر چیزی در اینجا اتفاق می افتد، در حال حاضر،
ثبت نام، هنوز هم هیچ چیز نیست.
بنابراین، کد به نحوی خوب
بنابراین من از هیچ دیدن نیست پیام های خطا قرمز،
اما آنچه به وضوح اتفاق می افتد نیست؟
هیچ یک از کد من درست است، آن را به کار نمی کنم هیچ کدام
کدهای من به نظر می رسد اجرای، پس چرا این است؟
خوب، جاوا اسکریپت و مرورگرهای به طور کلی اجرا
محتویات یک صفحه وب، بالا به پایین، از چپ به راست.
و مشکل این است که که به دلیل بالا
این صفحه تا به HTML و سپس سر سپس اسکریپت اسکریپت دیگر،
این است که رفتن به عملی شدن قبل از آن چیزی است که حتی آماده،
یا حتی در درخت وجود دارد نمایش صفحه استفاده کنید.
فرم خود را، و نه حتی بدن در این نقطه وجود دارد.
بنابراین، از jQuery به اندازه کافی هوشمند است با بررسی خطا آن را
که اگر هیچ عنصر وجود دارد ID منحصر به فرد از ثبت نام،
آن را به نه نجات را بر شما
و فقط باعث برخی کنسول خطا و شکستن تمام صفحه،
آن را به سکوت، نادیده بگیرد شما، اما به این دلیل که هیچ یک
از این کد تا کنون اجرا شده است
زیرا هنگامی که شما به ثبت این ارسال کنترل،
هیچ عنصر وجود دارد به آن متصل به.
بنابراین، این نوع از هیچ عمل وجود دارد.
بنابراین، با مشخص به جای آن، صبر کنید تا سن لود شده است
اگر ما window.onload بود چیزی که مرتب سازی بر
از راه مدرسه قدیمی انجام آن و یا راه جذاب جی کوئری
شبیه به این، ما می توانیم بگو آن صبر کنید تا تمام
از این تگ های HTML را داشته بنابراین تجزیه شده است که حتی
در صورتی که تصاویر لود نیست، در حداقل آن گره در درخت است،
پس از آن JQuery و می توان اطمینان حاصل شود که همه چیز وجود دارد.
آره.
[نکته نامفهوم]
بله، خوب، بله کاملا.
بنابراین، راه حل های دیگر را به این، اگر شما این استفاده کنید
و یا به یاد داشته باشید که این وجود،
شما می توانید به حرکت همه از این به پایین
از صفحه وب، در داخل از بدن هنوز اما در زیر فرم
و نیز حل این مشکل.
این فقط به طور معمول در نظر گرفته عمل بد است.
این کثیف کمی و درهم و برهم ویژه
اگر شما در حفظ متراکم همه چیز به پایین صفحه،
به ویژه هنگامی که من نگه داشتن چیزهای کوچک و ساده با قرار دادن تمام
کد من داخل صفحه HTML
هنگامی که البته شما می توانید قطعا به عادت کنید
فاکتور آن را به یک فایل جداگانه
که در آن نقطه آن را فقط زیبا
به متمرکز فایل در سر.
به جز یک قیمت به شما پرداخت وجود دارد
با قرار دادن جاوا اسکریپت دارایی های دیگر مانند فایل های CSS
در سر صفحه، آنچه در معرض خطر است که شما اجرا است؟
>> صفحه در حال بارگذاری کندتر است.
>> صفحه در حال بارگذاری آهسته تر، چرا؟
>> از آنجا که ما در تلاش هستیم برای بارگذاری همه کتابخانه ها
قبل از [نامفهوم].
>> دقیقا به دلیل مرورگرها خوانده بالا کد به پایین،
چپ به راست اگر گوگل تجزیه و تحلیل کند است
یا از jQuery CDN کند است یا API فیس بوک آهسته است
و آن فایل فقط آویزان است به طور بالقوه بسته
در چگونه است که فایل شما بارگذاری می شود، تمام صفحه می تواند به نظر می رسد قطع.
و اگر شما این را مشاهده کنید بسیاری رک و پوست کنده
در وب سایت های آنها بسیاری تبلیغات کیفیت کم
در آنها، ما فقط یکی آهسته و یا هستید وب سایت سیم می تواند یک صفحه را قطع
برای برخی از نامحدود تعداد ثانیه
تا در نهایت مرورگر امیدوارم بار از روی آن
و سپس شما را نشان می دهد بقیه در صفحه
بنابراین، اگر شما تا به حال مانند استفاده می شود فیس بوک، مانند دکمه،
در صفحه وب خود، به من اجازه ببینید اگر من می توانم این را پیدا
بدون نیاز به ورود اینجا.
بنابراین، اگر شما به به دکمه فیس بوک مانند
کلیک کنید و یک کد دریافت، لعنت آن،
اجازه می دهد که اگر ما می توانید ببینید پیدا کردن مثال،
قطعا کسی این نوشته شده بود.
[مکث]
من در چند خواهید داد تا ثانیه اگر ما این کار را نمی بینم.
asynch فیس بوک - OK.
بنابراین، این کد است و مگر اینکه آنها به تازگی آن را تغییر داده اید
که فیس بوک در واقع توصیه می کند که شما با استفاده از
برای بارگذاری کتابخانه خود و در واقع پیشنهاد
که شما این کار را در بدن از صفحه شما.
بنابراین، فیس بوک به شما توصیه ایجاد یک نوع احمقانه DIV
که فقط ID منحصر به فرد مانند این، پس از آن یک تگ اسکریپت اند
و همه این پیچیدگی اساسا می کند به شرح زیر است
و آنها از هیچ jQuery استفاده نکرده زیرا آنها نمی خواهند
به فرض هر نوع دیگر وابستگیها،
اجازه دهید من این حرکت بیش از فقط یک کمی.
بنابراین، توجه آنها تابع بی نام اینجا،
بیشتر در مورد که در یک لحظه،
آنها سپس با استفاده از document.createElement،
آنها در حال ایجاد یک عنصر DOM، این مثل malloc پس به صحبت
که در آن برچسب از نوع اسکریپت، آن را پس از مشخص
که ویژگی ای async از این تگ در جریان است
درست باشد سپس شما بروید جلو و کشف کردن آنچه که URL
از جاوا اسکریپت فیس بوک باید باشد
و این تنها راه فانتزی
از چک کردن باید آن را HGP و یا HDPS.
و سپس در نهایت، شما متوجه چه فیس بوک می کند،
آنها از گره DOM که دارای یک ID از ریشه فیس بوک
است که آنچه به آنها گفته شما برای قرار دادن به صفحه
و پس از آن الحاق فرزند بنابراین اثر همه این است
به نوعی به صورت پویا تزریق برچسب اسکریپت جدید را در صفحه خود قرار دهید
به عنوان یک کودک از DIV که شما قرار داده شده وجود دارد به طوری که بقیه
بار صفحه را با خوشحالی
و سپس این کد در واقع می شود ناهمگام لود می شود.
بنابراین، در اصل پس از حقیقت و I به تعویق افتاده اشاره
از تابع بی نام،
چه چیزی این بد بو است نحو با اشاره به اینجا
وقتی که من نه تنها تابع باز کردن پرانتز، پرانتز بسته
و پس از آن آکولاد، چرا پرانتز باز در اینجا
و پس از آن نزدیک باز، بسته پرانتز وجود دارد، آنچه که انجام می دهند؟
>> [نامفهوم] تعریف و پس از آن اجرا؟
>> دقیقا، آن را تعریف تابع بی نام است که
بلکه فقط تعریف یک تابع،
البته کند اجرا نمی یک تابع تا زمانی که شما آن را
نام، اما البته این یک تابع بی نام
بنابراین شما می توانید آن را نمی نام اما شما می توانید
در جاوا اسکریپت اجرا تابع بی نام تنها
با کپسوله سازی است که کل آن در پرانتز به عنوان انجام داده ایم
با این پرانتز و این پرانتز در اینجا و سپس ثابت
به پایان تابع پرانتز باز، پرانتز بسته،
اگر شما نمی خواهید با تصویب آن هر آرگومان.
اما این به نظر می رسد نوع احمق،
مانند این که چرا این اضافی پیچیدگی نحوی
که اکثر مردم به نظر نمی رسد به رسمیت شناختن، چه مقدار است
از بسته بندی آن سه خط کد
در یک تابع بی نام در این راه.
آره.
>> برای جلوگیری از جای نوشتن در ارزش [نامفهوم].
>> دقیقا، برای جلوگیری از به جای نوشتن یک متغیر
در صفحه موجود، درست است؟
فیس بوک تا حدودی مغرورانه تصمیم گرفت،
آنها در حال رفتن به استفاده از E متغیر، آن را کاملا به احتمال زیاد
که شما یا هر کس با استفاده از فیس بوک مانند دکمه
یا هر چیز دیگر پلاگین های اجتماعی
در یک متغیر در جایی به نام E. بنابراین،
با کپسوله سازی تمام کد خود را در داخل
از این تابع ناشناس، آنها اساسا دامنه خود را داشته باشد
می کند که در معرض خطر ضربه بزند هر متغیر موجود است.
بنابراین، این بیش از حد است که در واقع یک نمونه بسیار معمول است،
به ویژه هنگامی که نوشتن کد کتابخانه
و یا زمانی که شما برای خودتان انجام دهید نه می خواهم به درهم و برهمی فضای نام خود را
با متغیرهای دیگر شما می خواهید ارزش برای زندگی
و مرگ یک بار خارج شوید آن بلوک از کد،
این یک روش خوب است در جاوا اسکریپت.
بسیار خوب.
بنابراین، پس از آن به این مثال به در اینجا، ما همه در پایان انجام داده ام
این مثال این است فقط تمیز کردن کد.
بنابراین، آن را هنوز هم یک کل دسته از سوئیچ ها، یک دسته کامل
از شرایط اینجا، اما متوجه کمی نحو،
این دسترسی به گره DOM با ثبت نام ID منحصر به فرد،
به معنای فضای نگاه در حال حاضر برای از نسل آن گره،
پیدا کردن آن اگر آن را از نوع ورودی و پس از آن حتی
اگر شما از این دیده نشده است قبل از، شما ممکن است بدانید
که این فقط به معنی پیدا کردن آن را با برچسب های ورودی،
عناصر ورودی است که دارای یک ویژگی های نام با ارزش
از ایمیل، و پس از آن اجازه من موج دست من در برخی از
از بقیه است همه که تحریک کننده
اما واقعا فقط سینتکس jQuery برای انجام عملیات مشابه.
بسیار خوب.
اما چیزی که خیلی مهم نیست در اینجا چیزهای سمت مرورگر است
بلکه این واقعیت است که ما حال راه های تمیز کننده و پاک کننده
در واقع ساخت که کار کد.
بسیار خوب.
هر گونه سؤال؟
[نکته نامفهوم]
OK. در حال حاضر بخش سرگرم کننده است.
بنابراین، node.js چرا؟
چه کسی اهمیت میدهد؟
نظر شما در مورد آن را می دانم امروز؟
Node.js، چرا؟
هنری [فرض املایی].
[نکته نامفهوم]
تنظیم مجدد باتری؟
چه - این است که صخره اویزان کننده کامل
برای نیمه دوم از امروز.
چرا ما بروید و یک استراحت 5 دقیقه در اینجا،
یک و نیم آب نبات وجود دارد دستگاه وجود دارد اگر شما می
مانند برخی از آب نبات بدون قرار دادن یک چهارم در.