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

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

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

Ямарч программыг бичихдээ түүний кодод сайн тайлбар оруулж өгч сурах нь программчлалын зөв хэв жаяг гэдгийг хэлсэн. 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>

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

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

Програмчлалыг реактив /reactive/ аргачлалаар боловсруулахад зориулагдсан Javascript дээр бичигдсэн Rxjs санг өөрийн програмдаа ашиглахын тулд түүнийг компьютертоо хэрхэн суулгахыг RxJs санг суулгах хичээлд хийсэн. Сан хэрхэн ажилладагийг харахын тулд index.js файлд сангийн хамгийн энгийн боломжийг үзүүлэх

var stream$ = Rx.Observable.create(function (observer) {
    observer.next('нэг');
});

кодыг оруулан өгье. Дээрх код stream буюу урсгал үүсгэж байгаа. RxJs санд стрим нь ердийн хувьсагч. JavaScript -д стрим мэтийн синхрон төрлийн хувьсагчийн нэрийн ард $ тэмдэг тавьдаг дүрэмтэй. Кодод стрим төрлийн stream$ хувьсагчид RxJs сангийн Observable классын create аргаар стрим үүсгэн олгосон байгаа.

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

Хичээлээр useState -тэй тун төстэй useRef хукийн талаар авч үзье. useRef хукийн онцлог ашиглалтыг компонент хэдэн удаа дахин зурагдсанг /render/ тодорхойлох асуудлаар авч үзье. Асуудлыг дараах

import React, {useState, useEffect} from 'react'

function App() {
  const [renderCount, setRenderCount] = useState(1)
 
  useEffect(() => {
    setRenderCount(prev => prev + 1)
  })
 
  return (
      <div className="container">
        <h1>Render -ийн тоо {renderCount}</h1>
      </div>
  );
}

export default App;

кодоор шийдчих мэт.

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

Манай хичээлийн жишээ бага болохоор Vuex store -ийн хэмжээ жижиг байгаа. Төслийг хөгжүүлэхийн хирээр компонентуудын тоо өсөхийн зэрэгцээ Vuex store -д тодорхойлогдох зүйлүүд нэмэгдэн ирэх нь ойлгомжтой. Эндээс state, mutation, getters, actions -д олон тооны зүйлүүдийг тодорхойлон өгснөөр файлын хэмжээ томрох, кодийг ойлгоход хүндрэлтэй болон ирнэ. Иймээс Vuex store -ийг төрөл бүрийн модулд хуваан жижиглэх арга байдгийг хичээлээр авч үзье.

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

Энэ хичээлээр бид хэрэглэгчидтэй харьцахад ихээр ашигладаг alert(), confirm(), prompt() аргуудтай танилцах болно. Эдгээр нь window обьектын хамгийн ихээр ашигладаг аргууд тул хэрхэн ажилладагийг мэдэх хэрэгтэй. Цаашдаа жишээнүүд дээр аргуудыг ашиглах юм.

alert() арга

Параметрээр дамжуулсан текстийг дэлгэцэнд үзүүлнэ. alert() бол window обьекийн арга боловч бид обьектийг заан өгөхгүйгээр ашиглах боломжтой. Өөрөөр хэлбэл window.alert() гэхгүйгээр шууд alert() гэж бичих боломжтой. Жишээ нь

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

X санамсаргүй хувьсагчийн магадлалын тархалт дараах хүснэгтээр өгөгджээ. Математик дундаж нь хэд вэ?

X 2 5 3 1
P 0,4 0,2 0,3 0,1

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

 

тоонуудаас аль нь рационал тоонууд вэ?

A. a,b,e   B. a,d,e   C. b,c,e   D. b,c,d   E. a,c,d

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

 

1,(3) аравтын үелэх бутархайг энгийн бутархай болго.

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