Тайлбар болон түлхүүр үгс

Сайн тайлбартай программын код бичих бол программ зохиох соёлоос гадна кодыг ойлгомжтой болгох үндсэн арга. Иймд та программчлалын хэлийг үзэж эхлэх үеэсээ тайлбарыг ашиглаж сурахыг хичээгээрэй. Эхлэн суралцаж байхад том хэмжээний код бараг бичдэггүй болохоор тайлбарыг нэг их анзаардаггүйгээс болоод кодод тайлбар хийхгүй бичээд сурах гээд байх муу талтай. Энэ бол маш буруу барил гэдгийг танд сануулъя. Та том хэмжээний ажил гүйцэтгэх үедээ голдуу багаар ажиллах тул таны кодыг бусад хамтран ажиллагсад ойлгох шаардлага гарч болохыг санах хэрэгтэй. Том хэмжээний кодод тайлбар хийхгүй бол хэсэг хугацааны дараа та өөрөө ч ойлгохгүй байдал үүсч болохыг сануулъя. За ингээд хичээлээ эхлэе.

Скрипт доторх тайлбар

Ямарч программыг бичихдээ түүний кодод сайн тайлбар оруулж өгч сурах нь программчлалын зөв хэв жаяг гэдгийг хэлсэн. JavaScript тайлбарт давхар налуу зураас (//), налуу зураас од (/*) гэсэн хоёр төрлийн тэмдэглэгээг ашиглана. Давхар налуу зураас (үүнийг Java маягын тайлбар ч гэдэг) нь броузерт /хөтөч/ энэ тэмдэгтээс хойш байрлах бүх тэмдэгтийг тухайн мөрийг дуустал хасна гэдгийг заана. Энэ бүтэц нь нь ямар нэгэн мөрийн ард тайлбар оруулах боломжийг бүрдүүлнэ. Жишээ нь

document.write("Оруулах js файл байхгүй байна"); // файл байхгүй бол мэдээлэл өгнө.

Налуу зураас од тэмдэглэгээ нь хөтөчид энэ тэмдэгтээс хойш тайлбарын дуусгаварыг заах од налуу зураас (*/) тэмдэгт хооронд байрлах бүгдийг хэрэгсгэхгүй гэснийг заана. (/*) хос тэмдэгтээр эхэлсэн тайлбар бүр нь (*/) хос тэмдэгтээр хаагдаж байх ёстой. Энэ бүтэц нь олон мөрөөс бүрдсэн тайлбар болон программын кодын блок үүсгэхэд хэрэгтэй. Жишээ нь

<script type="text/javascript">
Програмын код
/*
Тайлбар болгосон кодын блок
*/
Програмын үргэлжлэл
</script>

JavaScript дэмждэггүй броузерууд

JavaScript-ийг дамждэггүй броузерт JavaScript кодыг хэрэгсэхгүй болгохын тулд <script> тегт HTML-ын тайлбарыг хэрхэн ашиглахыг доорх жишээгээр үзүүлж байна.

<script>
<!--Эндээс хуучин броузеруудаас нуух JavaScript операторууд
байрлана.
Энд тайлбарын төгсгөл //-->
</script>

Үүнээс гадна хуучин броузеруудаас кодыг нуух бас нэг арга байдаг. Энэ арга нь хэрэглэгчид түүний броузер нь JavaScript хэлийг дэмжихгүй байгааг мэдэгдэж байгаагаараа өмнөхөөсөө давуу. Энд <script> тег дотор <noscript> гэсэн хос тегийг ашигладаг. Жишээ нь

<script>
Энд JavaScript операторууд байна
 <noscript>
<H1>Уучлаарай таны броузер JavaScript хэлийг дэмжихгүй байна !</H1>
</noscript>
</script>

Хуучин броузерууд <SCRIPT> , <NOSCRIPT> тегүүдийг хэргэсэхгүй тул <NOSCRIPT> хос тегийн хоорондох хэсгийг үзүүлнэ. Харин JavaScript хэлийг дэмжих хөтөчүүд операторуудыг биелүүлээд харин <NOSCRIPT>  хос тегийн хоорондох хэсгийг хасдаг. Одоо ихэнх хэрэглэгчид JavaScript хэлийг дэмждэг хөтөч хэрэглэдэг болсон тул асуудал бараг үүсэхгүй.

JavaScript-ийн түлхүүр үгсүүд

Түлхүүр үг – энэ тусгай зориулалтаар ашиглахаар хадгалсан нэрүүд юм. Түлхүүр үгнүүдийг хувьсагч болон функцын нэрэнд ашиглаж болдоггүй. JavaScript-д дараах түлхүүр үгнүүдийг ашигладаг. Эдгээрийн зарим хэсэг нь Java-гийн үгнүүд боловч JavaScript тохирох боломжийг дээшлүүлэх үүднээс эдгээрийг түлхүүр үг болгон хадгалдаг.

JavaScript –ын түлхүүр үгнүүд

abstract boolean break byte case
catch char class const continue
debugger default delete do double
else enum export extends false
final finally float for function
goto if implements import in
instanceof int interface long native
new null package private protected
public return short static super
switch synchronized this throw transient
true try typeof var void
volatile while with

Үүнээс гадна дараах үгнүүдийг хувьсагч болон функцын нэрэнд ашиглахыг зөвшөөрдөггүй.


JavaScript –ын хувьсагч функцын нэрэнд ашиглаж болохгүй үгнүүүд

alert anchor area array assign
blur button Checkbox clearTimeout clientInformation
close closed confirm crypto date
defaultStatus Document element escape eval
event fileUpload focus form frame
frames frameRate Function GetClass hidden
history image isNaN java JavaArray
JavaClass JavaObject JavaPackage innerHeight innerWidth
lenght link location Math MimeType
name navigate navigator netscape number
object offscreenbuffering onblur onerror onfocus
onload onupload open opener option
outerHeight outerWidth package pageXoffset pageYoffset
parent parseFloat parseInt password pkcsll
plugin prompt prototype radio ref
reset screenX screenY scroll secure
select self setTimeout status string
submit sun taint text textarea
top toString unescape untaint Valueof
Window

Санамж:

  • Программын кодыг аль болохоор өөрөө бичихийг хичээгээрэй. Ингэснээр та бичлэгийн дүрмийг сайн сурах боломжтой.
  • Цаашдаа шаардлагагүй тохиолдолд html кодыг бичихгүйгээр зөвхөн javascript кодыг үзүүлнэ. Харин жишээгээ туршихдаа кодоо хуудас дотроо бичээрэй. Жишээнүүдийг туршихын тулд эхлээд доорх бүтэц бүхий index.html гэсэн файл бэлдээд авах хэрэгтэй.
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Жишээнүүд</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script type="text/javascript">
        Энд кодоо бичнэ
    </script>
</head>
<body>
    ...
</body>
</html>

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

  Нээгдсэн тоо: 341 Төлбөртэй

Хичээлээр хэрэглэгч сорилгын асуултын хариугаар сонгосон хувилбарын шалгалтын логикийн боловсруулалтыг хийе. Шалгалтыг Quiz компонентийн onAnswerClickHandler аргад

  const onAnswerClickHandler = (answerId) => {
    console.log("Хариултын Id:", answerId);
    if (quiz[activeQuestion].rightAnswerId === answerId) {
      const timeout = window.setTimeout(() => {
        if (isQuizFinished()) {
          console.log("Finished");
        } else {
          setActiveQuestion(activeQuestion + 1)      
        }
        window.clearTimeout(timeout);
      }, 1000);
    } else {
      
    }        
  };

  const isQuizFinished = () => {
    return activeQuestion === quiz.length - 1
  }

гэж хэрэгжүүлье. Дэлгэц дээрх асуулт бол quiz массивийн activeQuestion индекстэй элемент бөгөөд rightAnswerId талбарт зөв хариултын дугаар байгаа. Энэ утгыг onAnswerClickHandler функцэд параметрээр ирсэн answerId /хэрэглэгч сонгосон хариултын id/ -тэй тэнцэж буйг шалгана.

  Нээгдсэн тоо: 365 Төлбөртэй

Таны програм хөгжихийн хирээр компонентуудын тоо нэмэгдэнэ. Хэрвээ компонент бүр өөрийн хэвжүүлэлтийг css өргөтгөлтэй тусдаа файлуудад хадгалан ашиглаж байвал зарим хэвүүдийн нэр давхцан хэвүүд өөрчлөгдөх магадлал бий. Учир нь css өргөтгөлтэй файлууд бусад компонентуудад нээлттэй байдаг. Үүнийг шалгах зорилгоор Car компонентийн Car.css файлд

.btn {
  color: yellowgreen;
}

хэвийг нэмэн тодорхойлоод хэвийн классийг App компонентийн Toogle car товчинд

        <button className='btn' onClick={this.toogleCarsHandler}>Toogle car</button>

тавин өгөөд хуудсаа нээвэл

  Нээгдсэн тоо: 351 Бүртгүүлэх

Ямарч түвшингийн төсөлд ихэнх тохиолдолд өгөгдлийн сантай ажиллах хэрэгцээ гарч ирдэг. Иймээс Vuejs фреймворкоор өгөгдлийн сантай ажиллах суурь ойлголтыг сайн ойлгосон байх шаардлагатай. Бид Post обьектыг үүсгэх хичээлд өгөгдлийн санд бичлэг нэмэн оруулахыг сурсан бол энэ удаад vue-resource санг ашиглан өгөгдлийн сангаас мэдээлэл татан авахыг сурцгаая.

  Нээгдсэн тоо: 3317 Нийтийн

Сүүлийн жилүүдэд Angular, React, Vue гэх мэт Javascript сангуудын хөгжлөөр интернет програмчлалд динамик ажиллагаагтай сайт боловсруулах шинэ давалгаа үүссэн. Энэ нийтлэлээр Angular гэж юу вэ, юунд хэрэгтэй, ямар асуудлыг шийдэхэд бидэнд туслахыг тодруулъя. Angular бол Google компани боловсруулсан нээлттэй эх код бүхий JavaScript сан буюу фреймворк. Angular фреймворкийг ашиглан Single page application / нэг хуудас програм/ гэж нэрлэдэг динамик програмыг бүтээдэг. Энгийнээр хэлбэл Single page application гэдэг нь интернет дэх ердийн сайт боловч сайт ердөө нэг л хуудсаас бүрдэнэ. Энэ бол техникийн талаасаа ойлголт. Single page application хэрхэн ажилладаг, ердийн сайтуудаас ямар давуу талтайг Angular -ын албан ёсны веб сайтаас https://angular.io харж болно.

Үйл явдал /event/ тодорхой үйлдэл хийгдсэн талаар системд мэдэгддэг. Хэрвээ бид энэхүү үйлдлийг ажиглах хэрэгтэй бол яг энд…

Нээгдсэн тоо : 293

 

Манай төсөл олон хуудсуудтай болон тэдгээрийн хооронд динамикаар шилжилт хийж байгаа ч тухайн үед шилжилт хийгдсэн хуудаст тохирох…

Нээгдсэн тоо : 370

 

Зочин (Visitor) паттерн классуудыг өөрчлөхгүйгээр тэдгээрийн обьектуудын үйлдлийг тодорхойлох боломжийг олгоно. Зочин хэвийг ашиглахдаа классуудын хоёр ангилалыг тодорхойлно.…

Нээгдсэн тоо : 339

 

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 435

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 484

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 508

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 601

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 694

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 731

 
Энэ долоо хоногт

a ба b катеттай тэгш өнцөгт гурвалжин ерөнхий тэгш өнцөгтэй квадратыг багтаасан бол квадратын периметрийг ол.

Нээгдсэн тоо : 1136

 

функцийн графикийн (0,-1) цэгт татсан шүргэгч шулуун ба координатын тэнхлэгүүдээр хашигдсан мужийн талбайг ол.

Нээгдсэн тоо : 752

 

тэнцэтгэл бишийн хамгийн их бүхэл шийдийг ол.

Нээгдсэн тоо : 822