-Ìåòêè

 -Ïîäïèñêà ïî e-mail

 

 -Ïîèñê ïî äíåâíèêó

Ïîèñê ñîîáùåíèé â CommandButton

 -Ñòàòèñòèêà

Ñòàòèñòèêà LiveInternet.ru: ïîêàçàíî êîëè÷åñòâî õèòîâ è ïîñåòèòåëåé
Ñîçäàí: 05.05.2008
Çàïèñåé:
Êîììåíòàðèåâ:
Íàïèñàíî: 214

Âûáðàíà ðóáðèêà HTML.


Äðóãèå ðóáðèêè â ýòîì äíåâíèêå: ýëåêòðîíèêà(2), ñîôò(1), ñîâåòû(11), ïðîãðàììèðîâàíèå(28), ÏÐÈÊÎËÛ(2), Èñòîðèÿ(7), ÆÅËÅÇÎ(3), âîïðîñû(3), PHP(6), JavaScript(10)
Êîììåíòàðèè (1)

ÒÀÁËÈÖÀ ÎÑÍÎÂÍÛÕ ÒÅÃΠßÇÛÊÀ HTML

Äíåâíèê

Ïÿòíèöà, 18 Ñåíòÿáðÿ 2009 ã. 10:57 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà

 

ÒÀÁËÈÖÀ ÎÑÍÎÂÍÛÕ ÒÅÃΠßÇÛÊÀ HTML

ÒÀÁËÈÖÀ ÎÑÍÎÂÍÛÕ ÒÅÃΠßÇÛÊÀ HTML

Îñíîâíûå òåãè

<html></html>

Óêàçûâàåò ïðîãðàììå ïðîñìîòðà ñòðàíèö ÷òî ýòî HTML äîêóìåíò.

<head></head>

Îïðåäåëÿåò ìåñòî, ãäå ïîìåùàåòñÿ ðàçëè÷íàÿ èíôîðìàöèÿ íå îòîáðàæàåìàÿ â òåëå äîêóìåíòà. Çäåñü ðàñïîëàãàåòñÿ òåã íàçâàíèÿ äîêóìåíòà è òåãè äëÿ ïîèñêîâûõ ìàøèí.

<body></body>

Îïðåäåëÿåò âèäèìóþ ÷àñòü äîêóìåíòà

Òåãè îãëàâëåíèÿ

<title></title>

Ïîìåùàåò íàçâàíèå äîêóìåíòà â îãëàâëåíèå ïðîãðàììû ïðîñìîòðà ñòðàíèö

 

Àòðèáóòû òåëà äîêóìåíòà

<body bgcolor=?>

Óñòàíàâëèâàåò öâåò ôîíà äîêóìåíòà, èñïîëüçóÿ çíà÷åíèå öâåòà â âèäå RRGGBB - ïðèìåð: FF0000 - êðàñíûé öâåò.

<body text=?>

Óñòàíàâëèâàåò öâåò òåêñòà äîêóìåíòà, èñïîëüçóÿ çíà÷åíèå öâåòà â âèäå RRGGBB - ïðèìåð: 000000 - ÷åðíûé öâåò.

<body link=?>

Óñòàíàâëèâàåò öâåò ãèïåðññûëîê, èñïîëüçóÿ çíà÷åíèå öâåòà â âèäå RRGGBB - ïðèìåð: 00FF00 - çåëåíûé öâåò.

<body vlink=?>

Óñòàíàâëèâàåò öâåò ãèïåðññûëîê íà êîòîõ âû óæå ïîáûâàëè, èñïîëüçóÿ çíà÷åíèå öâåòà â âèäå RRGGBB - ïðèìåð: 333333 - ñåðûé öâåò.

<body alink=?>

Óñòàíàâëèâàåò öâåò ãèïåðññûëîê ïðè íàæàòèè.

 

Òåãè äëÿ ôîðìàòèðîâàíèÿ òåêñòà

<pre></pre>

Îáðàìëÿåò ïðåäâàðèòåëüíî îòôîðìàòèðîâàííûé òåêñò.

<h1></h1>

Ñîçäàåò ÑÀÌÛÉ ÁÎËÜØÎÉ çàãîëîâîê

<h6></h6>

Ñîçäàåò ñàìûé ìàëåíüêèé çàãîëîâîê

<b></b>

Ñîçäàåò æèðûé òåêñò

<i></i>

Ñîçäàåò íàêëîííûé òåêñò

<tt></tt>

Ñîçäàåò òåêñò - èìèòèðóþùèé ñòèëü ïå÷àòíîé ìàøèíêè.

<cite></cite>

Èñïîëüçóåòñÿ äëÿ öèòàò, îáû÷íî íàêëîííûé òåêñò.

<em></em>

Èñïîëüçóåòñÿ äëÿ âûäåëåíèÿ èç òåêñòà ñëîâà (íàêëîííûé èëè æèðíûé òåêñò)

<strong></strong>

Èñïîëüçóåòñÿ äëÿ âûäåëåíèÿ íàèáîëåå âûæíûõ ÷àñòåé òåêñòà (íàêëîííûé èëè æèðíûé òåêñò)

<font size=?></font>

Óñòàíàâëèâàåò ðàçìåð òåêñòà â ïðåäåëàõ îò 1 äî 7.

<font color=?></font>

Óñòàíàâëèâàåò öâåò òåêñòà, èñïîëüçóÿ çíà÷åíèå öâåòà â âèäå RRGGBB.

 

Ãèïåðññûëêè

<a href="URL"></a>

Ñîçäàåò ãèïåðññûëêó íà äðóãèå äîêóìåíòû èëè ÷àñòü òåêóùåãî äîêóìåíòà.

<a href="mailto:EMAIL">
</a>

Ñîçäàåò ãèïåðññûëêó âûçîâà ïî÷òîâîé ïðîãðàììû äëÿ íàïèñàíèÿ ïèñüìà àâòîðó äîêóìåíòà.

<a name="NAME"></a>

Îòìå÷àåò ÷àñòü òåêñòà êàê öåëü äëÿ ãèïïåðññûëîê â äîêóìåíòå.

<a href="#NAME"></a>

Ñîçäàåò ãèïåðññûëêó íà ÷àñòü òåêóùåãî äîêóìåíòà.

 

Ôîðìàòèðîâàíèå

<p>

Ñîçäàåò íîâûé ïàðàãðàô

<p align=?>

Âûðàâíèâàåò ïàðàãðàô îòíîñèòåëüíî îäíîé èç ñòîðîí äîêóìåíòà, çíà÷åíèÿ: left, right, èëè center

<br>

Âñòàâëÿåò ïåðåâîä ñòðîêè.

<blockquote>
</blockquote>

Ñîçäàåò îòñòóïû ñ îáåèõ ñòîðîí òåêñòà.

<dl></dl>

Ñîçäàåò ñïèñîê îïðåäåëåíèé.

<dt>

Îïðåäåëÿåò êàæäûé èç òåðìèíîâ ñïèñêà

<dd>

Îïèñûâàåò êàæäîå îïðåäåëåíèå

<ol></ol>

Ñîçäàåò íóìåðîâàííûé ñïèñîê

<li>

Îïðåäåëÿåò êàæäûé ýëåìåíò ñïèñêà è ïðèñâàèâàåò íîìåð

<ul></ul>

Ñîçäàåò íåíóìåðîâàííûé ñïèñîê

<li>

 

Ïðåäâàðÿåò êàæäûé ýëåìåíò ñïèñêà è äîáàâëÿåò êðóæîê èëè êâàäðàòèê.

<div align=?>

Âàæíûé òåã èñïîëüçóåìûé äëÿ ôîðìàòèðîâàíèÿ áîëüøèõ áëîêîâ òåêñòà HTML äîêóìåíòà, òàêæå èñïîëüçóåòñÿ â òàáëèöàõ ñòèëåé

 

Ãðàôè÷åñêèå ýëåìåíòû

<img src="name">

Äîáàâëÿåò èçîáðàæåíèå â HTML äîêóìåíò

<img src="name" align=?>

Âûðàâíèâàåò èçîáðàæåíèå ê îäíîé èç ñòîðîí äîêóìåíòà, ïðèíèìàåò çíà÷åíèÿ: left, right, center; bottom, top, middle

<img src="name" border=?>

Óñòàíàâëèâàåò òîëùèíó ðàìêè âîêðóã èçîáðàæåíèÿ

<hr>

Äîáàâëÿåò â HTML äîêóìåíò ãîðèçîíòàëüíóþ ëèíèþ.

<hr size=?>

Óñòàíàâëèâàåò âûñîòó(òîëùèíó) ëèíèè

<hr width=?>

Óñòàíàâëèâàåò øèðèíó ëèíèè, ìîæíî óêàçàòü øèðèíó â ïèêñåëàõ èëè ïðîöåíòàõ.

<hr noshade>

Ñîçäàåò ëèíèþ áåç òåíè.

<hr color=?>

Çàäàåò ëèíèè îïðåäåëåííûé öâåò. Çíà÷åíèå RRGGBB.

 

Òàáëèöû

<table></table>

Ñîçäàåò òàáëèöó.

<tr></tr>

Îïðåäåëÿåò ñòðîêó â òàáëèöå.

<td></td>

Îïðåäåëÿåò îòäåëüíóþ ÿ÷åéêó â òàáëèöå.

<th></th>

Îïðåäåëÿåò çàãîëîâîê òàáëèöû (íîðìàëüíàÿ ÿ÷åéêà ñ îòöåíòðîâàííûì æèðíûì òåêñòîì)

Àòðèáóòû òàáëèöû

<table border=#>

Çàäàåò òîëùèíó ðàìêè òàáëèöû.

<table cellspacing=#>

Çàäàåò ðàññòîÿíèå ìåæäó ÿ÷åéêàìè òàáëèöû.

<table cellpadding=#>

Çàäàåò ðàññòîÿíèå ìåæäó ñîäåðæèìûì ÿ÷åéêè è åå ðàìêîé.

<table width=#>

Óñòàíàâëèâàåò øèðèíó òàáëèöû â ïèêñåëàõ èëè ïðîöåíòàõ îò øèðèíû äîêóìåíòà.

<tr align=?> èëè <td align=?>

Óñòàíàâëèâàåò âûðàâíèâàíèå ÿ÷ååê â òàáëèöå, ïðèíèìàåò çíà÷åíèÿ: left, center, èëè right.

<tr valign=?> èëè <td valign=?>

Óñòàíàâëèâàåò âåðòèêàëüíîå âûðàâíèâàíèå äëÿ ÿ÷ååê òàáëèöû, ïðèíèìàåò çíà÷åíèÿ : top, middle, èëè bottom.

<td colspan=#>

Óêàçûâàåò êîë-âî ñòîëáöåâ êîòîðîå îáúåäèíåíî â îäíîé ÿ÷åéêå. (ïî óìîë÷àíèþ=1)

<td rowspan=#>

Óêàçûâàåò êîë-âî ñòðîê êîòîðîå îáúåäèíåíî â îäíîé ÿ÷åéêå. (ïî óìîë÷àíèþ=1)

<td nowrap>

Íå ïîçâîëÿåò ïðîãðàììå ïðîñìîòðà äåëàòü ïåðåâîä ñòðîêè â ÿ÷åéêå òàáëèöû.

 

Êàäðû

<frameset></frameset>

Ïðåäâàðÿåò òåã <body> â äîêóìåíòå, ñîäåðæàùåì êàäðû;

<frameset rows="value,value">

Îïðåäåëÿåò ñòðîêè â òàáëèöå êàäðîâ, âûñîòà êîòîðûõ îïðåäåëåíà êîë-âîì ïèêñåëîâ èëè â ïðîöåíòíîì ñîîòíîøåíèè ê âûñîòå òàáëèöû êàäðîâ.

<frameset cols="value,value">

Îïðåäåëÿåò ñòîëáöû â òàáëèöå êàäðîâ, øèðèíà êîòîðûõ îïðåäåëåíà êîë-âîì ïèêñåëîâ èëè â ïðîöåíòíîì ñîîòíîøåíèè ê øèðèíå òàáëèöû êàäðîâ.

<frame>

Îïðåäåëÿåò åäèíè÷íûé êàäð èëè îáëàñòü â òàáëèöå êàäðîâ.

<noframes></noframes>

Îïðåäåëÿåò, ÷òî áóäåò ïîêàçàíî â îêíå áðàóçåðà åñëè îí íå ïîääåðæèâàåò êàäðû.

 

Àòðèáóòû êàäðîâ

<frame src="URL">

Îïðåäåëÿåò êàêîé èç HTML äîêóìåíòîâ áóäåò ïîêàçàí â êàäðå.

<frame name="name">

Óêàçûâàåò Èìÿ êàäðà èëè îáëàñòè, ÷òî ïîçâîëÿåò ïåðåíàïðàâëÿòü èíôîðìàöèþ â ýòîò êàäð èëè îáëàñòü èç äðóãèõ êàäðîâ.

<frame marginwidth=#>

Îïðåäåëÿåò âåëè÷èíó îòñòóïîâ ïî ëåâîìó è ïðàâîìó êðàÿì êàäðà; äîëæíî áûòü ðàâíî èëè áîëüøå 1.

<frame marginheight=#>

Îïðåäåëÿåò âåëè÷èíó îòñòóïîâ ïî âåðõíåìó è íèæíåìó êðàÿì êàäðà; äîëæíî áûòü ðàâíî èëè áîëüøå 1.

<frame scrolling=VALUE>

Óêàçûâàåò áóäåò-ëè âûâîäèòñÿ ëèíåéêà ïðîêðóòêè â êàäðå; çíà÷åíèå value ìîæåò áûòü "yes," "no," èëè "auto". Çíà÷åíèå ïî óìîë÷àíèþ äëÿ îáû÷íûõ äîêóìåíòîâ - auto.

<frame noresize>

Ïðåïÿòñòâóåò èçìåíåíèþ ðàçìåðîâ êàäðà.

 

Ôîðìû

Äëÿ ôîðì, âûïîëíÿþùèõ êàêèå-òî ôóíêöèè äîëæíû áûòü çàïóùåíû ñîîòâåòñòâóþùèå CGI ñêðèïòû íà ñåðâåðå. HTML òîëüêî ñîçäàåò âíåøíèé èíòåðôåéñ ôîðìû.

<form></form>

Ñîçäàåò ôîðìû

<select multiple name="NAME" size=?></select>

Ñîçäàåò ñêðîëèðóåìîå ìåíþ. Size óñòàíàâëèâàåò êîë-âî ïóíêòîâ ìåíþ, êîòîðîå áóäåò ïîêàçàíî íà ýêðàíå, îñòàëüíûå áóäóò äîñòóïíû ïðè èñïîëüçîâàíèè ïðîêðóòêè.

<option>

Óêàçûâàåò êàæäûé îòäåëüíûé ýëåìåíò ìåíþ

<select name="NAME"></select>

 

Ñîçäàåò íèñïàäàþùåå ìåíþ

<option>

Óêàçûâàåò êàæäûé îòäåëüíûé ýëåìåíò ìåíþ

<textarea name="NAME" cols=40 rows=8></textarea>

Ñîçäàåò îêíî äëÿ ââîäà òåêñòà. Columns óêàçûâàåò øèðèíó îêíà; rows óêàçûâàåò åãî âûñîòó.

<input type="checkbox" name="NAME">

Ñîçäàåò checkbox. Çà òåãîì ñëåäóåò òåêñò.

<input type="radio" name="NAME" value="x">

Ñîçäàåò radio êíîïêó. Çà òåãîì ñëåäóåò òåêñò.

<input type=text name="foo" size=20>

Ñîçäàåò ñòðîêó äëÿ ââîäà òåêñòà. Ïàðàìåòðîì Size óêàçûâàåòñÿ äëèíà â ñèìâîëàõ.

<input type="submit" value="NAME">

 

 

Ðóáðèêè:  HTML
PHP

Êîììåíòàðèè (0)

HTML

Äíåâíèê

Âòîðíèê, 30 Èþíÿ 2009 ã. 02:05 + â öèòàòíèê
Ðóáðèêè:  Èñòîðèÿ
ïðîãðàììèðîâàíèå
ñîâåòû
âîïðîñû
HTML

Êîììåíòàðèè (0)

ôîðìû â HTML

Äíåâíèê

Âòîðíèê, 30 Èþíÿ 2009 ã. 01:52 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà

FORM òýã îïðåäåëÿåò ôîðìó äëÿ çàïîëíåíèÿ â HTML äîêóìåíòå. Â îäíîì äîêóìåíòå ìîæåò áûòü îïðåäåëåíî íåñêîëüêî ôîðì äëÿ çàïîëíåíèÿ, íî âëîæåííûå FORM îïåðàòîðû íå ðàçðåøåíû.

Ñèíòàêñèñ

Ôîðìàò îïåðàòîðà FORM âûãëÿäèò ñëåäóþùèì îáðàçîì:

<FORM ACTION="url" METHOD="POST">...</FORM>

Åãî àòðèáóòû ñëåäóþùèå:

ACTION

URL ñåðâåðà çàïðîñîâ, êóäà áóäåò îòîñëàíî ñîäåðæàíèå ôîðìû ïîñëå ïîäòâåðæäåíèÿ. Åñëè ýòî ïîëå îòñóòñòâóåò, áóäåò èñïîëüçîâàí URL òåêóùåãî äîêóìåíòà.

METHOD

HTTP/1.0 ìåòîä èñïîëüçóåìûé äëÿ ïîñûëêè ñîäåðæàíèÿ çàïîëíåííîé ôîðìû íà ñåðâåð. Ýòîò ìåòîä çàâèñèò îò òîãî, êàê ðàáîòàåò êîíêðåòíûé ñåðâåð çàïðîñîâ. Íàñòîÿòåëüíî ðåêîìåíäóåòñÿ èñïîëüçîâàíèå ìåòîäà POST. Âîçìîæíûå âàðèàíòû ñëåäóþùèå:

§        GET - ýòî ìåòîä ïî óìîë÷àíèþ, êîòîðûé ïðèâîäèò ê äîáàâëåíèþ ñîäåðæèìîãî çàïîëíåííîé ôîðìû ê URL, êàê è â íîðìàëüíîì çàïðîñå.

§        POST ïðè èñïîëüçîâàíèè ýòîãî ìåòîäà ñîäåðæèìîå çàïîëíåííîé ôîðìû ïåðåñûëàåòñÿ íå êàê ÷àñòü URL, à êàê ñîäåðæèìîå òåëà çàïðîñà.

ENCTYPE

çàäàåò òèï êîäèðîâàíèÿ ñîäåðæèìîãî çàïîëíåííîé ôîðìû. Ýòîò àòðèáóò äåéñòâóåò òîëüêî êîãäà èñïîëüçóåòñÿ ìåòîä POST è äàæå â ýòîì ñëó÷àå èìååò òîëüêî îäíî âîçìîæíîå çíà÷åíèå (êîòîðîå ÿâëÿåòñÿ çíà÷åíèåì ïî óìîë÷àíèþ)- application/x-www-form-urlencoded.

Âíóòðè FORM îïåðàòîðà ìîæåò íàõîäèòüñÿ âñå, ÷òî óãîäíî, êðîìå äðóãîãî îïåðàòîðà FORM. Ñîãëàñíî ñïåöèôèêàöèè, äëÿ çàäàíèÿ èíòåðôåéñíûõ ýëåìåíòîâ âíóòðè îïåðàòîðà FORM èñïîëüçóþòñÿ òýãè INPUT, SELECT, è TEXTAREA.

Ðóáðèêè:  ïðîãðàììèðîâàíèå
ñîâåòû
HTML

Êîììåíòàðèè (0)

Èñïîëüçîâàíèå ìåòàäàííûõ (HTTP-EQUIV, NAME, REL, REV, BASE) ïðè ñîçäàíèè HTML äîêóìåí

Äíåâíèê

Âòîðíèê, 30 Èþíÿ 2009 ã. 01:41 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà

Îïèñàíèå è ôîðìàò ìåòà-òåãîâ HTML. Èñïîëüçîâàíèå ìåòàäàííûõ (HTTP-EQUIV, NAME, REL, REV, BASE) ïðè ñîçäàíèè HTML äîêóìåíòîâ.

META-òåãè èìåþò äâà âîçìîæíûõ àòðèáóòà

- <META HTTP-EQUIV="èìÿ" CONTENT="ñîäåðæèìîå">
- <META NAME="èìÿ" CONTENT="ñîäåðæèìîå">

META-òåãè äîëæíû íàõîäèòüñÿ â çàãîëîâêå HTML-äîêóìåíòà ìåæäó <HEAD> è </HEAD> (îñîáåííî ýòî âàæíî äëÿ äîêóìåíòîâ, èñïîëüçóþùèõ ôðåéìû).

 Àòðèáóò HTTP-EQUIV

 

META-òåãè ñ àòðèáóòîì HTTP-EQUIV ýêâèâàëåíòíû HTTP-çàãîëîâêàì. Îáû÷íî îíè óïðàâëÿþò äåéñòâèÿìè áðîóçåðîâ è ìîãóò áûòü èñïîëüçîâàíû äëÿ ñîâåðøåíñòâîâàíèÿ èíôîðìàöèè, âûäàâàåìîé îáû÷íûìè çàãîëîâêàìè. Òýãè òàêîé ôîðìû ìîãóò äàòü òàêîé æå ýôôåêò, ÷òî è HTTP-çàãîëîâêè, è íà íåêîòîðûõ ñåðâåðàõ àâòîìàòè÷åñêè ìîãóò áûòü ïåðåâåäåíû â íàñòîÿùèå HTTP-çàãîëîâêè. HTTP-çàãîëîâêè îïèñûâàþòñÿ â RFC1945 (HTTP/1.0) è RFC2068 (HTTP/1.1).

HTTP-çàãîëîâêè ìîãóò áûòü ñãåíåðèðîâàíû ñ ïîìîùüþ CGI-ñêðèïòîâ. Ýòî ïîçâîëÿþò ñäåëàòü ñåðâåðû Apache è CERN.  äðóãèõ ñåðâåðàõ ìîãóò èñïîëüçîâàòüñÿ äðóãèå ìåõàíèçìû ãåíåðèðîâàíèÿ çàãîëîâêîâ. Íåêîòîðûå ãåíåðèðóåìûå ñåðâåðîì ïîëÿ çàãîëîâêîâ íå ìîãóò áûòü ïîäìåíåíû çíà÷åíèÿìè èç META-òåãîâ (â ÷àñòíîñòè Date), äðóãèå ïîäìåíÿþòñÿ òîëüêî ïðè íåíîðìàëüíîì ñòàòóñ-êîäå (<>200). Êîãäà çàãîëîâîê íå ïîíÿòåí, òî çíà÷åíèå HTTP-çàãîëîâêà ïðåâàëèðóåò íàä çíà÷åíèåì META-òåãîâ.

Expires

÷èòàòü äàëåå...
Ðóáðèêè:  ïðîãðàììèðîâàíèå
ñîâåòû
HTML

Êîììåíòàðèè (0)

Íîâûå èíòåðåñíûå ôóíêöèè HTML

Äíåâíèê

Âòîðíèê, 30 Èþíÿ 2009 ã. 01:39 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà

1. Íîâûå HTML-ýëåìåíòû, êîòîðûå ïîçâîëÿò íàì ëó÷øå îïèñûâàòü ñîäåðæèìîå

Ïåðâè÷íàÿ çàäà÷à HTML ñîñòîèò â òîì, ÷òîáû îïèñûâàòü ñòðóêòóðó web-ñòðàíèöû. Äëÿ ïðèìåðà, òåêñò, çàêëþ÷åííûé ìåæäó ýëåìåíòàìè <p></p> ãîâîðèò áðàóçåðó î òîì, ÷òî òåêñò ìåæäó ýòèìè ýëåìåíòàìè - ýòî àáçàö.

HTML 5: ïÿòü íàèáîëåå èíòåðåñíûõ âåùåé - HTML, CSS, JavaScript - Web-òåõíîëîãèè - Ïðîãðàììèðîâàíèå, èñõîäíèêè, îïåðàöèîííûå ñèñòåìû

Ðàçíîîáðàçíûé web-êîíòåíò âñå áîëüøå âûõîäèò çà ðàìêè âîçìîæíîñòåé HTML 4 àêêóðàòíî îïèñûâàòü ñîäåðæèìîå web-ñòðàíèö. Ïîòîêîâîå âèäåî è àóäèî - õàðàêòåðíûé ïðèìåð. Òàêèå ÷àñòè web-ñàéòîâ, êàê ìåíþ íàâèãàöèè è òîðãîâûå ìàðêè (îáû÷íî ðàñïîëîæåííûå â çàãîëîâêå) ïðèñóòñòâóþò íà áîëüøèíñòâå web-ñòðàíèö. ×òî áîëåå âàæíî, âîïðåêè òåêóùèì ñïåöèôèêàöèÿì HTML, óëó÷øåíèÿ â JavaScript, Flash è òåõíîëîãèÿõ íà ñòîðîíå ñåðâåðà ñïîñîáñòâóþò ðàñïðîñòðàíåíèþ íàñûùåííûõ èíòåðíåò-ïðèëîæåíèé (rich Internet applications), îòçûâ÷èâûõ, íàöåëåííûõ íà ïîëüçîâàòåëÿ, îñíîâàííûõ íà áðàóçåðå ïðèëîæåíèé.

Äîáàâëÿÿ ìíîæåñòâî HTML-ýëåìåíòîâ, HTML 5 ñòàâèò ñâîåé öåëüþ äàòü ðàçðàáîò÷èêàì ëó÷øèé è áîëåå òî÷íûé ñïîñîá îïèñàíèÿ äàííûõ.

Äëÿ ïðèìåðà ïðèâåäåì òî, êàê, ñîãëàñíî òåêóùèì ñïåöèôèêàöèÿì HTML, ìû îïèñàëè áû ñòðóêòóðó òèïè÷íîé web-ñòðàíèöû:

HTML 5: ïÿòü íàèáîëåå èíòåðåñíûõ âåùåé - HTML, CSS, JavaScript - Web-òåõíîëîãèè - Ïðîãðàììèðîâàíèå, èñõîäíèêè, îïåðàöèîííûå ñèñòåìû

Ïðîáëåìà òàêîãî âàðèàíòà ðàçìåòêè ñîñòîèò â òîì, ÷òî äëÿ áðàóçåðà âñå ýëåìåíòû - ýòî <div>-ýëåìåíòû. Áðàóçåð îáðàáàòûâàåò âñå âíóòðè <div>-ýëåìåíòîâ îäèíàêîâî, ïîñêîëüêó íå âèäèò ðàçíèöû ìåæäó áëîêàìè, à êëàññû è èäåíòèôèêàòîðû âðîäå content, sidebar è footer ðàçëè÷íû îò ñàéòà ê ñàéòó.

 HTML 5 âû ìîæåòå îïèñàòü ðàçìåòêó òîé æå ñàìîé ñòðàíèöû ïî-äðóãîìó

×èòàòü äàëåå...
Ðóáðèêè:  Èñòîðèÿ
ïðîãðàììèðîâàíèå
ñîâåòû
HTML

Êîììåíòàðèè (0)

íîâèíêà â HTML

Äíåâíèê

Âòîðíèê, 30 Èþíÿ 2009 ã. 01:13 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà

HTML 5 - ýòî ãðÿäóùåå îáíîâëåíèå ãèïåðòåêñòîâîãî ÿçûêà ðàçìåòêè, îñíîâíîãî ñïîñîáà ñîçäàíèÿ êîíòåíòà äëÿ ðàçìåùåíèÿ åãî âî âñåìèðíîé ïàóòèíå. Ðàçðàáîòêà HTML îñòàíîâèëàñü â 1999 ãîäó, íà âåðñèè HTML 4.01 è ñ òåõ ïîð web-ñîäåðæèìîå èçìåíèëîñü òàê, ÷òî òåêóùèå ñïåöèôèêàöèè HTML ïåðåñòàëè ñîîòâåòñòâîâàòü ñåãîäíÿøíèì òðåáîâàíèÿì.

HTML 5 íàöåëåí íà òî, ÷òîáû óâåëè÷èòü ôóíêöèîíàëüíóþ ñîâìåñòèìîñòü HTML è ñîîòâåòñòâîâàòü ðàñòóùèì òðåáîâàíèÿì ðàçíîîáðàçíîãî è ñìåøàííîãî web-êîíòåíòà. HTML 5 òàê æå íàöåëåí íà óñòðàíåíèå íåäîñòàòêîâ ÷åòâåðòîé âåðñèè.  ýòîé ñòàòüå ìû âçãëÿíåì íà 5 íîâûõ èíòåðåñíûõ âåùåé â HTML 5.

Ýòî ñòàòüÿ íàøåãî ãîñòÿ Jacob Gube, web-ðàçðàáîò÷èêà è äèçàéíåðà, àâòîðà Six Revisions - áëîãà î web-ðàçðàáîòêå è äèçàéíå.

Íåìíîãî èñòîðèè

Îòâëå÷åííûå ðàçìûøëåíèÿ î HTML 5 íà÷àëèñü â êîíöå 2003 ãîäà. World Wide Web Consortium (W3C), îðãàíèçàöèÿ, íàáëþäàþùàÿ çà ñòàíäàðòàìè ïðîòîêîëîâ è ðåêîìåíäàöèé â web, âûñêàçàëà èíòåðåñ ê ÷åðíîâèêó HTML 5 ðàçðàáîòàííîìó Web Hypertext Application Technology Working Group (WHATWG), ãðóïïîé ñôîðìèðîâàííîé â 2004 ãîäó èç ïðåäñòàâèòåëåé Apple, Mozilla Foundation è Opera Software.  ðåçóëüòàòå, â 2007 ãîäó, äëÿ ðàçðàáîòêè ñïåöèôèêàöèé HTML 5, áûëà ñôîðìèðîâàíà W3C HTML Working Group.

Ðàçðàáîòêà èäåò è îæèäàåòñÿ, ÷òî HTML 5 äîñòèãíåò ñòàòóñà W3C Candidate Recommendation â 2012 ãîäó, õîòÿ áîëüøèíñòâî ñîâðåìåííûõ áðàóçåðîâ óæå ñåé÷àñ èìåþò ÷àñòè÷íóþ ïîääåðæêó ñïåöèôèêàöèé HTML 5.

Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

îñíîâíûå òåãè HTML

Äíåâíèê

Âòîðíèê, 30 Èþíÿ 2009 ã. 01:05 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà

Îñíîâíûå òåãè

<html></html> - Óêàçûâàåò ïðîãðàììå ïðîñìîòðà ñòðàíèö ÷òî ýòî HTML äîêóìåíò.

<head></head> - Îïðåäåëÿåò ìåñòî, ãäå ïîìåùàåòñÿ ðàçëè÷íàÿ èíôîðìàöèÿ íå îòîáðàæàåìàÿ â òåëå äîêóìåíòà. Çäåñü ðàñïîëàãàåòñÿ òåã íàçâàíèÿ äîêóìåíòà è òåãè äëÿ ïîèñêîâûõ ìàøèí.

<body></body> - Îïðåäåëÿåò âèäèìóþ ÷àñòü äîêóìåíòà

Òåãè îãëàâëåíèÿ

<title></title>

- Ïîìåùàåò íàçâàíèå äîêóìåíòà â îãëàâëåíèå ïðîãðàììû ïðîñìîòðà ñòðàíèö 

Àòðèáóòû òåëà äîêóìåíòà

<body bgcolor=?> - Óñòàíàâëèâàåò öâåò ôîíà äîêóìåíòà, èñïîëüçóÿ çíà÷åíèå öâåòà â âèäå RRGGBB - ïðèìåð: FF0000 - êðàñíûé öâåò.

<body text=?> - Óñòàíàâëèâàåò öâåò òåêñòà äîêóìåíòà, èñïîëüçóÿ çíà÷åíèå öâåòà â âèäå RRGGBB - ïðèìåð: 000000 - ÷åðíûé öâåò.

<body link=?> - Óñòàíàâëèâàåò öâåò ãèïåðññûëîê, èñïîëüçóÿ çíà÷åíèå öâåòà â âèäå RRGGBB - ïðèìåð: 00FF00 - çåëåíûé öâåò.

<body vlink=?> - Óñòàíàâëèâàåò öâåò ãèïåðññûëîê íà êîòîõ âû óæå ïîáûâàëè, èñïîëüçóÿ çíà÷åíèå öâåòà â âèäå RRGGBB - ïðèìåð: 333333 - ñåðûé öâåò.

<body alink=?> - Óñòàíàâëèâàåò öâåò ãèïåðññûëîê ïðè íàæàòèè. 

Òåãè äëÿ ôîðìàòèðîâàíèÿ òåêñòà

<pre></pre> - Îáðàìëÿåò ïðåäâàðèòåëüíî îòôîðìàòèðîâàííûé òåêñò.

<h1></h1> - Ñîçäàåò ÑÀÌÛÉ ÁÎËÜØÎÉ çàãîëîâîê

×èòàòü äàëåå...
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

×òî òàêîå HTML?

Äíåâíèê

Âòîðíèê, 30 Èþíÿ 2009 ã. 00:57 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà HTML (îò àíãë. HyperText Markup Language — «ÿçûê ðàçìåòêè ãèïåðòåêñòà») — ñòàíäàðòíûé ÿçûê ðàçìåòêè äîêóìåíòîâ âî Âñåìèðíîé ïàóòèíå. Áîëüøèíñòâî âåá-ñòðàíèö ñîçäàþòñÿ ïðè ïîìîùè ÿçûêà HTML (èëè XHTML). ßçûê HTML èíòåðïðåòèðóåòñÿ áðàóçåðîì è îòîáðàæàåòñÿ â âèäå äîêóìåíòà, â óäîáíîé äëÿ ÷åëîâåêà ôîðìå.
HTML ÿâëÿåòñÿ ïðèëîæåíèåì SGML (ñòàíäàðòíîãî îáîáù¸ííîãî ÿçûêà ðàçìåòêè) è ñîîòâåòñòâóåò ìåæäóíàðîäíîìó ñòàíäàðòó ISO 8879.
ßçûê HTML áûë ðàçðàáîòàí áðèòàíñêèì ó÷¸íûì Òèìîì Áåðíåðñîì-Ëè ïðèáëèçèòåëüíî â 1991—1992 ãîäàõ â ñòåíàõ Åâðîïåéñêîãî ñîâåòà ïî ÿäåðíûì èññëåäîâàíèÿì â Æåíåâå (Øâåéöàðèÿ). HTML ñîçäàâàëñÿ êàê ÿçûê äëÿ îáìåíà íàó÷íîé è òåõíè÷åñêîé äîêóìåíòàöèåé, ïðèãîäíûé äëÿ èñïîëüçîâàíèÿ ëþäüìè, íå ÿâëÿþùèìèñÿ ñïåöèàëèñòàìè â îáëàñòè â¸ðñòêè. HTML óñïåøíî ñïðàâëÿëñÿ ñ ïðîáëåìîé ñëîæíîñòè SGML ïóò¸ì îïðåäåëåíèÿ íåáîëüøîãî íàáîðà ñòðóêòóðíûõ è ñåìàíòè÷åñêèõ ýëåìåíòîâ (ðàçìå÷àåìûõ «òåãàìè»), ñëóæàùèõ äëÿ ñîçäàíèÿ îòíîñèòåëüíî ïðîñòûõ, íî êðàñèâî îôîðìëåííûõ äîêóìåíòîâ. Ïîìèìî óïðîùåíèÿ ñòðóêòóðû äîêóìåíòà, â HTML âíåñåíà ïîääåðæêà ãèïåðòåêñòà. Ìóëüòèìåäèéíûå âîçìîæíîñòè áûëè äîáàâëåíû ïîçæå. Èçíà÷àëüíî ÿçûê HTML áûë çàäóìàí è ñîçäàí êàê ñðåäñòâî ñòðóêòóðèðîâàíèÿ è ôîðìàòèðîâàíèÿ äîêóìåíòîâ áåç èõ ïðèâÿçêè ê ñðåäñòâàì âîñïðîèçâåäåíèÿ (îòîáðàæåíèÿ).  èäåàëå, òåêñò ñ ðàçìåòêîé HTML äîëæåí áûë áåç ñòèëèñòè÷åñêèõ è ñòðóêòóðíûõ èñêàæåíèé âîñïðîèçâîäèòüñÿ íà îáîðóäîâàíèè ñ ðàçëè÷íîé òåõíè÷åñêîé îñíàù¸ííîñòüþ (öâåòíîé ýêðàí ñîâðåìåííîãî êîìïüþòåðà, ìîíîõðîìíûé ýêðàí îðãàíàéçåðà, îãðàíè÷åííûé ïî ðàçìåðàì ýêðàí ìîáèëüíîãî òåëåôîíà èëè óñòðîéñòâà è ïðîãðàììû ãîëîñîâîãî âîñïðîèçâåäåíèÿ òåêñòîâ). Îäíàêî ñîâðåìåííîå ïðèìåíåíèå HTML î÷åíü äàëåêî îò åãî èçíà÷àëüíîé çàäà÷è. Íàïðèìåð, òåã , íåñêîëüêî ðàç èñïîëüçîâàííûé äëÿ ôîðìàòèðîâàíèÿ ñòðàíèöû, êîòîðóþ âû ñåé÷àñ ÷èòàåòå, ïðåäíàçíà÷åí äëÿ ñîçäàíèÿ â äîêóìåíòàõ ñàìûõ îáû÷íûõ òàáëèö, íî, êàê ìîæíî óáåäèòüñÿ, çäåñü íåò íè îäíîé òàáëèöû. Ñ òå÷åíèåì âðåìåíè, îñíîâíàÿ èäåÿ ïëàòôîðìîíåçàâèñèìîñòè ÿçûêà HTML áûëà îòäàíà â ñâîåîáðàçíóþ æåðòâó ñîâðåìåííûì ïîòðåáíîñòÿì â ìóëüòèìåäèéíîì è ãðàôè÷åñêîì îôîðìëåíèè.
Ðóáðèêè:  Èñòîðèÿ
ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

JavaScript Ïðèîðèòåòû îïåðàòîðîâ

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:30 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà
Âûøå ìû óæå ãîâîðèëè, ÷òî â âûðàæåíèÿõ îïåðàòîðû âûïîëíÿþòñÿ â ïîðÿäêå, îïðåäåëÿåìîì ñ ïîìîùüþ êðóãëûõ ñêîáîê, ñîãëàñíî ïðèîðèòåòàì; îïåðàòîðû ñ îäèíàêîâûìè ïðèîðèòåòàìè âûïîëíÿþòñÿ ñëåâà íàïðàâî.  ýòîì ðàçäåëå ìû óòî÷íèì ïðèîðèòåòû âñåõ îïåðàòîðîâ. Êðóãëûå ñêîáêè, ñ ïîìîùüþ êîòîðûõ ìîæíî óñòàíîâèòü ëþáîé ïîðÿäîê âûïîëíåíèÿ îïåðàòîðîâ â âûðàæåíèè, ìîæíî ñ÷èòàòü îïåðàòîðàìè. Îíè îáëàäàþò íàèâûñøèì ïðèîðèòåòîì. Ýòè ñêîáêè ìîãóò îáðàçîâûâàòü ñòðóêòóðó âëîæåííîñòè. Âûðàæåíèÿ, çàêëþ÷åííûå âî âíóòðåííèå êðóãëûå ñêîáêè, âûïîëíÿþòñÿ ðàíüøå òåõ, êîòîðûå çàêëþ÷åíû âî âíåøíèå êðóãëûå ñêîáêè. Èíòåðïðåòàòîð JavaScript íà÷èíàåò àíàëèç âûðàæåíèÿ èìåííî ñ âûÿñíåíèÿ ñòðóêòóðû âëîæåííîñòè ïàð êðóãëûõ ñêîáîê. Íà âòîðîì ìåñòå ïî ïðèîðèòåòó íàõîäèòñÿ âû÷èñëåíèå èíäåêñîâ ìàññèâîâ è îïðåäåëåíèÿ ñàìèõ ýëåìåíòîâ ìàññèâîâ. Èíäåêñû ìàññèâîâ, êàê èçâåñòíî, çàêëþ÷åíû â êâàäðàòíûå ñêîáêè. Íà ïîñëåäíåì ìåñòå íàõîäèòñÿ çàïÿòàÿ, êàê ðàçäåëèòåëü ïàðàìåòðîâ.

Ðàñïðåäåëåíèå îïåðàòîðîâ ïî ïðèîðèòåòàì

Ïðèîðèòåò Îïåðàòîð Êîììåíòàðèé
1 ( ) îò âíóòðåííèõ ê âíåøíèì

function() âûçîâ ôóíêöèè
2 ! ëîãè÷åñêîå íå
~ ïîáèòîâîå íå
- îòðèöàíèå
++ èíêðåìåíò (ïðèðàùåíèå)
-- äåêðåìåíò
new
typeof
void
delete óäàëåíèå îáúåêòíîãî ýëåìåíòà
3 * óìíîæåíèå
/ äåëåíèå
% äåëåíèå ïî ìîäóëþ (îñòàòîê îò äåëåíèÿ)
4 + ñëîæåíèå (êîíêàòåíàöèÿ)
- âû÷èòàíèå
5 << ïîáèòîâûå ñäâèãè
>>
>>>
6 < ìåíüøå
<= íå áîëüøå (ìåíüøå èëè ðàâíî)
> áîëüøå
>= íå ìåíüøå (áîëüøå èëè ðàâíî)
7 == ðàâåíñòâî
!= íåðàâåíñòâî
8 & ïîáèòîâîå è
9 ^ ïîáèòîâîå èñêëþ÷àþùåå èëè
10 | ïîáèòîâîå èëè (äèçúþíêöèÿ)
11 && ëîãè÷åñêîå è (êîíúþíêöèÿ)
12 || ëîãè÷åñêîå èëè
13 ? óñëîâíîå âûðàæåíèå (îïåðàòîð óñëîâèÿ)
14 = îïåðàòîðû ïðèñâàèâàíèÿ
+=
-=
*=
/=
%=
<<=
>=
>>=
&=
^=
|=
15 , çàïÿòàÿ (ðàçäåëèòåëü ïàðàìåòðîâ)

Êðîìå ïðèîðèòåòîâ ñëåäóåò òàêæå ó÷èòûâàòü, ÷òî ñëîæíûå ëîãè÷åñêèå âûðàæåíèÿ, ñîñòîÿùèå èç íåñêîëüêèõ áîëåå ïðîñòûõ, ñîåäèíåííûõ îïåðàòîðàìè È è ÈËÈ, âûïîëíÿþòñÿ ïî òàê íàçûâàåìîìó ïðèíöèïó êîðîòêîé îáðàáîòêè. Ýòî îçíà÷àåò, ÷òî çíà÷åíèå âñåãî âûðàæåíèÿ áûâàåò ìîæíî îïðåäåëèòü, âû÷èñëèâ ëèøü îäíî èëè íåñêîëüêî áîëåå ïðîñòûõ âûðàæåíèé, íå âû÷èñëÿÿ îñòàëüíûå. Íàïðèìåð, âûðàæåíèå x&&y âû÷èñëÿåòñÿ ñëåâà íàïðàâî; åñëè çíà÷åíèå x îêàçàëîñü ðàâíûì false, òî çíà÷åíèå y íå âû÷èñëÿåòñÿ, ïîñêîëüêó è òàê èçâåñòíî, ÷òî çíà÷åíèå âñåãî âûðàæåíèÿ ðàâíî false. Àíàëîãè÷íî, åñëè â âûðàæåíèè x || y çíà÷åíèå x ðàâíî true, òî çíà÷åíèå y íå âû÷èñëÿåòñÿ, ïîñêîëüêó óæå ÿñíî, ÷òî âñå âûðàæåíèå ðàâíî true.
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML
JavaScript

Êîììåíòàðèè (0)

JavaSCript Ñïåöèàëüíûå îïåðàòîðû

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:29 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà Â ýòîì ðàçäåëå îïèñûâàþòñÿ îïåðàòîðû, êîòîðûå ïðè ïðîãðàììèðîâàíèè íà JavaScript èñïîëüçóþòñÿ îòíîñèòåëüíî ðåäêî..
10.1. Ïîáèòîâûå îïåðàòîðû
Ïîáèòîâûå (ïîðàçðÿäíûå) îïåðàòîðû ïðèìåíÿþòñÿ ê öåëî÷èñëåííûì çíà÷åíèÿì è âîçâðàùàþò öåëî÷èñëåííûå çíà÷åíèÿ. Ïðè èõ âûïîëíåíèè îïåðàíäû ïðåäâàðèòåëüíî ïðèâîäÿòñÿ ê äâîè÷íîé ôîðìå ïðåäñòàâëåíèÿ, â êîòîðîé ÷èñëî ÿâëÿåòñÿ ïîñëåäîâàòåëüíîñòüþ èç íóëåé è åäèíèö äëèíîé 32. Ýòè íóëè è åäèíèöû íàçûâàþòñÿ äâîè÷íûìè ðàçðÿäàìè èëè áèòàìè. Äàëåå ïðîèçâîäèòñÿ íåêîòîðîå äåéñòâèå íàä áèòàìè, â ðåçóëüòàòå êîòîðîãî ïîëó÷àåòñÿ íîâàÿ ïîñëåäîâàòåëüíîñòü áèòîâ.  êîíöå êîíöîâ ýòà ïîñëåäîâàòåëüíîñòü áèòîâ ïðåîáðàçóåòñÿ ê îáû÷íîìó öåëîìó ÷èñëó — ðåçóëüòàòó ïîáèòîâîãî îïåðàòîðà.  ñëåäóþùåé òàáëèöå ïðèâåäåí ñïèñîê ïîáèòîâûõ îïåðàòîðîâ.

Ïîáèòîâûå îïåðàòîðû

Îïåðàòîð Íàçâàíèå Ëåâûé îïåðàíä Ïðàâûé îïåðàíä
& ïîáèòîâîå è öåëîå ÷èñëî öåëîå ÷èñëî
| ïîáèòîâîå èëè öåëîå ÷èñëî öåëîå ÷èñëî
^ ïîáèòîâîå èñêëþ÷àþùåå èëè öåëîå ÷èñëî öåëîå ÷èñëî
~ ïîáèòîâîå íå — öåëîå ÷èñëî
<< ñìåùåíèå âëåâî öåëîå ÷èñëî êîëè÷åñòâî áèòîâ,
íà êîòîðîå ïðîèçâîäèòñÿ ñìåùåíèå
>> ñìåùåíèå âïðàâî öåëîå ÷èñëî êîëè÷åñòâî áèòîâ,
íà êîòîðîå ïðîèçâîäèòñÿ ñìåùåíèå
>>> çàïîëíåíèå íóëÿìè ïðè ñìåùåíèè öåëîå ÷èñëî êîëè÷åñòâî áèòîâ,
âïðàâî íà êîòîðîå ïðîèçâîäèòñÿ ñìåùåíèå


Îïåðàòîðû &, |, ^ è ~ íàïîìèíàþò ëîãè÷åñêèå îïåðàòîðû, íî èõ îáëàñòü äåéñòâèÿ — áèòû, à íå ëîãè÷åñêèå çíà÷åíèÿ. Îïåðàòîð ~ èçìåíÿåò çíà÷åíèå áèòà íà ïðîòèâîïîëîæíîå: 0 íà 1, à 1 — íà 0.  ñëåäóþùåé òàáëèöå ïîÿñíÿåòñÿ, êàê ðàáîòàþò îïåðàòîðû &, |, ^.

Ðàáîòà îïåðàòîðîâ &, |, ^

X Y X&Y X | Y X^Y
1 1 1 1 0
1 0 0 1 1
0 1 0 1 1
0 0 0 0 0

Íàïðèìåð, 2&3 ðàâíî 2, à 2|3 ðàâíî 3. Äåéñòâèòåëüíî, â äâîè÷íîì ïðåäñòàâëåíèè 2 åñòü 10, à 3 — 11. Ïðèìåíåíèå ïîáèòîâûõ îïåðàòîðîâ äàñò â ñëó÷àå îïåðàòîðà & äâîè÷íîå ÷èñëî 10, òî åñòü äåñÿòè÷íîå ÷èñëî 2, à â ñëó÷àå îïåðàòîðà | — äâîè÷íîå ÷èñëî 11, òî åñòü äåñÿòè÷íîå 3.
Ó îïåðàòîðîâ ñìåùåíèÿ îäèí îïåðàíä è îäèí ïàðàìåòð, óêàçûâàþùèé, íà êàêîå êîëè÷åñòâî áèò ñëåäóåò ïðîèçâåñòè ñìåùåíèå. Íàïðèìåð, 3<<2 ðàâíî 12, ïîòîìó ÷òî ñìåùåíèå âëåâî íà äâà áèòà äâîè÷íîãî ÷èñëà 11 (äåñÿòè÷íîå 3) äàåò 1100, ÷òî â äåñÿòè÷íîé ôîðìå åñòü 12. Ðåçóëüòàòîì âû÷èñëåíèÿ âûðàæåíèÿ 6>>2 — 1. Äåéñòâèòåëüíî, ÷èñëî 6 â äâîè÷íîé ôîðìå ýòî 110; ñìåùåíèå åãî âïðàâî íà äâà áèòà äàåò 1 êàê â äâîè÷íîé, òàê è â äåñÿòè÷íîé ôîðìå.
10.2. Îáúåêòíûå îïåðàòîðû
Îïåðàòîð óäàëåíèÿ ñâîéñòâ îáúåêòà (delete)

Óäàëèòü ñâîéñòâî îáúåêòà, à òàêæå ýëåìåíò ìàññèâà ìîæíî ñ ïîìîùüþ îïåðàòîðà delete. Îáû÷íî ýòîò îïåðàòîð èñïîëüçóþò äëÿ óäàëåíèÿ ýëåìåíòîâ ìàññèâà:
delete ýëåìåíò

ÂÍÈÌÀÍÈÅ
Ïðè óäàëåíèè ýëåìåíòà ìàññèâà óäàëÿåòñÿ è åãî èíäåêñ, íî îñòàâøèåñÿ ýëåìåíòû ñîõðàíÿþò ñâîè ïðåæíèå èíäåêñû, à äëèíà ìàññèâà íå èçìåíÿåòñÿ. Èñïîëüçîâàíèå îïåðàòîðà delete íå ïðèâîäèò ê íåìåäëåííîìó îñâîáîæäåíèþ ïàìÿòè. Ðåøåíèå îá îñâîáîæäåíèè ïàìÿòè ïðèíèìàåòñÿ òàê íàçûâàåìûì ÿäðîì JavaScript, à ïîëüçîâàòåëüñêàÿ ïðîãðàììà ëèøü ñîçäàåò ê ýòîìó ïðåäïîñûëêè, íî íå ìîæåò êîíòðîëèðîâàòü ýòîò ïðîöåññ àáñîëþòíî.

Îïåðàòîð ïðîâåðêè íàëè÷èÿ ñâîéñòâ (in)

Ýòîò îïåðàòîð ïîçâîëÿåò ïðîâåðèòü, èìååòñÿ ëè íåêîòîðîå ñâîéñòâî èëè ìåòîä ó òîãî èëè èíîãî îáúåêòà. Ëåâûé îïåðàíä ïðåäñòàâëÿåò ñîáîé ññûëêó â âèäå ñòðîêè íà èíòåðåñóþùåå íàñ ñâîéñòâî èëè ìåòîä, à ïðàâûé îïåðàíä — îáúåêò. Ññûëêà íà ìåòîä ñîäåðæèò ëèøü åãî íàçâàíèå áåç êðóãëûõ ñêîáîê. Åñëè ñâîéñòâî èëè ìåòîä ñîäåðæèòñÿ â îáúåêòå, òî âîçâðàùàåòñÿ true, èíà÷å — false. Îòñþäà ñëåäóåò, ÷òî îïåðàòîð in ìîæíî ïðèìåíÿòü â óñëîâíûõ âûðàæåíèÿõ (â îïåðàòîðàõ if, switch, for, while, do-while).

Ïðèìåðû:
Íàïðèìåð, îáúåêò document, ïðåäñòàâëÿþùèé çàãðóæåííûé â áðàóçåð HTML-äîêóìåíò, èìååò ìåòîä write(). ×òîáû óáåäèòüñÿ â ýòîì, ñëåäóåò íàïèñàòü âûðàæåíèå: "write" in document // çíà÷åíèå ðàâíî true

Ñîçäàäèì îáúåêò è ïðîâåðèì íàëè÷èå â íåì íåêîòîðûõ ñâîéñòâ.

function Ñîòðóäíèê(Èìÿ, Îòäåë, Òåëåôîí, Çàðïëàòà) {
this.Èìÿ = Èìÿ
this.Îòäåë = Îòäåë
this.Òåëåôîí = Òåëåôîí
this.Çàðïëàòà = Çàðïëàòà
}
agent007 = new Ñîòðóäíèê("Äæåéìñ Áîíä", 5, "223-332")
"Òåëåôîí" in agent007 // true
"Ó÷åíàÿ ñòåïåíü" in agent007 // false

Îïåðàòîð in ïîääåðæèâàåòñÿ áðàóçåðàìè IE5.5+, NN6+.

Îïåðàòîð ïðîâåðêè ïðèíàäëåæíîñòè îáúåêòà ìîäåëè (instanceof)
Ýòîò îïåðàòîð ïîçâîëÿåò ïðîâåðèòü, ïðèíàäëåæèò ëè íåêîòîðûé îáúåêò îáúåêòíîé ìîäåëè JavaScript. Ëåâûé îïåðàíä ïðåäñòàâëÿåò ïðîâåðÿåìîå çíà÷åíèå, à ïðàâûé ññûëêó íà êîðíåâîé îáúåêò, òàêîé êàê Array, String, Date è ò. ï. Âûðàæåíèå ñ îïåðàòîðîì instanceof âîçâðàùàåò true èëè false è, òàêèì îáðàçîì ìîæåò èñïîëüçîâàòüñÿ â óñëîâíûõ âûðàæåíèÿõ (â îïåðàòîðàõ if, switch, for, while, do while).

Ïðèìåð:
Ñîçäàííûé ìàññèâ ÿâëÿåòñÿ ýêçåìïëÿðîì îáúåêòà Array, à ïîñëåäíèé ñàì ÿâëÿåòñÿ ýêçåìïëÿðîì êîðíåâîãî îáúåêòà Object.

myarray = new Array()
myarray instanceof Array // true
Array instance Object // true
Myarray instanceof String // false

Îïåðàòîð in ïîääåðæèâàåòñÿ áðàóçåðàìè IE5.5+, NN6+.
10.3. Êîìïëåêñíûå îïåðàòîðû
Îïåðàòîð óñëîâèÿ (?:)

Ýòîò îïåðàòîð ÿâëÿåòñÿ ñîêðàùåííîé ôîðìîé îïåðàòîðà óñëîâíîãî ïåðåõîäà if … else… Åãî òàê è íàçûâàþò: îïåðàòîð óñëîâèÿ. Îáû÷íî îí èñïîëüçóåòñÿ âìåñòå ñ îïåðàòîðîì ïðèñâàèâàíèÿ îäíîãî èç äâóõ âîçìîæíûõ çíà÷åíèé, â çàâèñèìîñòè îò çíà÷åíèÿ óñëîâíîãî âûðàæåíèÿ. Ñèíòàêñèñ îïåðàòîðà óñëîâèÿ ñëåäóþùèé:
óñëîâèå ? âûðàæåíèå1 : âûðàæåíèå2
Ñ îïåðàòîðîì ïðèñâàèâàíèÿ îïåðàòîð óñëîâèÿ èìååò òàêîé âèä:
ïåðåìåííàÿ = óñëîâèå ? âûðàæåíèå1 : âûðàæåíèå2
Îïåðàòîð óñëîâèÿ âîçâðàùàåò çíà÷åíèå âûðàæåíèÿ âûðàæåíèå1, åñëè óñëîâèå èñòèííî, â ïðîòèâíîì ñëó÷àå — çíà÷åíèå âûðàæåíèÿ âûðàæåíèå2.

Ïðèìåð:

d = new Date()
x = d.getDate()
typedate = (x%2 == 0)&&(x > 1) ? "÷åòíîå" : "íå÷åòíîå"

Îïåðàòîð îïðåäåëåíèÿ òèïà (tipeof)

Ýòîò îïåðàòîð èñïîëüçóåòñÿ äëÿ ïðîâåðêè, îòíîñèòñÿ ëè çíà÷åíèå ê îäíîìó èç ñëåäóþùèõ òèïîâ: string, number, boolean, object, function èëè undefined. Çíà÷åíèå, âîçâðàùàåìîå îïåðàòîðîì typeof, ÿâëÿåòñÿ ñòðîêîâûì. Îíî ñîäåðæèò îäíî èç ïåðå÷èñëåííûõ âûøå íàçâàíèé òèïà. Åäèíñòâåííûé îïåðàíä ïèøåòñÿ ñïðàâà îò êëþ÷åâîãî ñëîâà typeof.
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

JavaScript Ïîëüçîâàòåëüñêèå îáúåêòû

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:28 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà  ïðåäûäóùåì ðàçäåëå ìû ðàññìîòðåëè âñòðîåííûå îáúåêòû, òî åñòü çàðàíåå ïðåäîïðåäåëåííûå â JavaScript è ÷àñòî èñïîëüçóåìûå â ïðîãðàììàõ. Ñ ïîìîùüþ âûðàæåíèé ñ êëþ÷åâûì ñëîâîì new âû ìîæåòå ñîçäàâàòü ýêçåìïëÿðû ýòèõ îáúåêòîâ, òî åñòü èõ êîíêðåòíûå âîïëîùåíèÿ. Áîëåå òîãî, áëàãîäàðÿ ñâîéñòâó prototype èìååòñÿ âîçìîæíîñòü äîáàâëÿòü ê îáúåêòàì íîâûå ñâîéñòâà è ìåòîäû, ïðèäóìàííûå ïîëüçîâàòåëåì è îòñóòñòâîâàâøèå â èñõîäíûõ âñòðîåííûõ îáúåêòàõ.  áîëüøèíñòâå ñëó÷àåâ, â ÷àñòíîñòè ïðè ñîçäàíèè ñöåíàðèåâ äëÿ Web-ñòðàíèö, âñåãî ýòîãî áîëåå ÷åì äîñòàòî÷íî. Îäíàêî íåëüçÿ îáîéòè âíèìàíèåì âîçìîæíîñòü ñîçäàíèÿ ñîáñòâåííûõ îáúåêòîâ. Çà÷åì íóæíû ñîáñòâåííûå îáúåêòû? Îíè íå ÿâëÿþòñÿ íåîáõîäèìûìè äëÿ ðåøåíèÿ ïðàêòè÷åñêèõ çàäà÷. Ñ òî÷êè çðåíèÿ ïðîãðàììèñòà, îáúåêò ïðåäñòàâëÿåò ñîáîé ïðîñòî óäîáíîå ñðåäñòâî îðãàíèçàöèè äàííûõ è ôóíêöèé èõ îáðàáîòêè. ×òîáû êàê-òî îðãàíèçîâàòü äàííûå è ôóíêöèè â ïðîãðàììå, äàëåêî íå âñåãäà íåîáõîäèìî ïðèáåãàòü ê òàêîé êîíñòðóêöèè, êàê îáúåêò. Âåäü äàæå ïðè âíóøèòåëüíîì êîëè÷åñòâå äàííûõ ïðîãðàììèñò íå âñåãäà îðãàíèçóåò èõ â âèäå ìàññèâà (îáúåêòà Array): áûâàåò äîñòàòî÷íûì îãðàíè÷èòüñÿ ïðîñòûìè ïåðåìåííûìè.
9.1. Ñîçäàíèå îáúåêòà
Îáúåêòû â JavaScript ìîæíî ñîçäàòü íåñêîëüêèìè ñïîñîáàìè. Ìû ðàññìîòðèì òðè òàêèõ ñïîñîáà.

Ïåðâûé ñïîñîá îñíîâàí íà ôóíêöèè, â òåëå êîòîðîé îïèñûâàþòñÿ âñå ñâîéñòâà è ìåòîäû ñîçäàâàåìîãî îáúåêòà. Ïîñêîëüêó ýòà ôóíêöèÿ èãðàåò îïðåäåëÿþùóþ ðîëü â ñîçäàíèè îáúåêòà, åå íàçûâàþò ôóíêöèåé-êîíñòðóêòîðîì èëè ïðîñòî êîíñòðóêòîðîì îáúåêòà. ×òî, ñîáñòâåííî, äîëæåí äåëàòü êîíñòðóêòîð? Î÷åâèäíî, îí äîëæåí ââåñòè èìÿ ñîçäàâàåìîãî îáúåêòà, à òàêæå åãî ñâîéñòâà è ìåòîäû. Êðîìå òîãî, îí äîëæåí äîïóñêàòü âîçìîæíîñòü ïðèñâàèâàíèÿ íà÷àëüíûõ çíà÷åíèé ñâîéñòâàì. Èìÿ ôóíêöèè-êîíñòðóêòîðà îáúåêòà ÿâëÿåòñÿ îäíîâðåìåííî è èìåíåì ñîçäàâàåìîãî îáúåêòà. Ñâîéñòâà è ìåòîäû ñîçäàâàåìîãî îáúåêòà çàäàþòñÿ â òåëå ôóíêöèè-êîíñòðóêòîðà ñ ïîìîùüþ îïåðàòîðîâ ïðèñâàèâàíèÿ. Ïðè ýòîì èìåíà ïåðåìåííûõ-ñâîéñòâ çàïèñûâàþòñÿ ñ êëþ÷åâûì ñëîâîì this (ýòîò): this.ïåðåìåííàÿ. Ðàññìîòðèì â êà÷åñòâå ïðèìåðà ôóíêöèþ-êîíñòðóêòîð, îïðåäåëÿþùóþ îáúåêò car (àâòîìîáèëü) ñî ñâîéñòâàìè name (íàçâàíèå), model (ìîäåëü) è color (öâåò):

function car(name, model, color) {
this.name = name
this.model = model
this.color = color
}

Ýòà ôóíêöèÿ îïðåäåëÿåò îáúåêò car. ×òîáû ñîçäàòü êîíêðåòíûé ýêçåìïëÿð îáúåêòà car, ñëåäóåò âûïîëíèòü âûðàæåíèå ñ âûçîâîì ýòîé ôóíêöèè, êîòîðîé ìîæíî ïåðåäàòü çíà÷åíèÿ ïàðàìåòðîâ. Ìû óæå çíàåì, ÷òî ýêçåìïëÿð îáúåêòà ñîçäàåòñÿ ñ ïîìîùüþ îïåðàòîðà ïðèñâàèâàíèÿ ñ êëþ÷åâûì ñëîâîì new:
mycar = new car("Ëàäà", "ÂÀÇ21099","green")

Èòàê, ìû ñîçäàëè îáúåêò mycar, ÿâëÿþùèéñÿ ýêçåìïëÿðîì îáúåêòà car. Òàêèõ ýêçåìïëÿðîâ ñ ðàçëè÷íûìè èìåíàìè ìîæíî ñîçäàòü íåñêîëüêî. Çíà÷åíèÿ ñâîéñòâ îáúåêòà mycar ìîæíî èçìåíÿòü â ïðîãðàììå:

mycar.model // çíà÷åíèå ðàâíî "ÂÀÇ21099"
mycar.name // çíà÷åíèå ðàâíî "Ëàäà"
mycar.model = "ÂÀÇ2110" // çíà÷åíèå ðàâíî "ÂÀÇ2110"

Êàê âèäèòå, îáúåêò ýòî ïðîñòî îñîáûé ñïîñîá ãðóïïèðîâêè äàííûõ è èõ èñïîëüçîâàíèÿ (ñîñòàâíîå èìÿ ïåðåìåííîé: îáúåêò.ñâîéñòâî).

Îáúåêòû ìîæíî ñîçäàâàòü è ñ ïîìîùüþ êîíñòðóêòîðà new Object():

mycar = new Object()
mycar.name = "Ëàäà"
mycar.model = "ÂÀÇ21099"
mycar.color = "green"

 ýòîì ñïîñîáå îò÷åòëèâî âèäíî, ñîçäàâàåìûé îáúåêò ÿâëÿåòñÿ ýêçåìïëÿðîì îáúåêòà Object ïîäîáíî òîìó êàê, íàïðèìåð, ñîçäàâàåìûé ìàññèâ ÿâëÿåòñÿ ýêçåìïëÿðîì îáúåêòà Array.
Äîïóñêàåòñÿ òàêæå è ñëåäóþùàÿ êîìïàêòíàÿ çàïèñü îïðåäåëåíèÿ îáúåêòà:
mycar = {name:"Ëàäà", model:"ÂÀÇ21099", color:"green"}
Çäåñü âñå îïðåäåëåíèå ñâîéñòâ çàêëþ÷àåòñÿ â ôèãóðíûå ñêîáêè. Ïàðû ñâîéñòâî-çíà÷åíèå ðàçäåëÿþòñÿ çàïÿòûìè, à èìÿ ñâîéñòâà îòäåëÿåòñÿ îò çíà÷åíèÿ äâîåòî÷èåì.

Ïðè ñîçäàíèè îáúåêòà ìû ìîæåì çàäàòü çíà÷åíèÿ ñâîéñòâ ïî óìîë÷àíèþ, òî åñòü çíà÷åíèÿ, êîòîðûå áóäóò èìåòü ñâîéñòâà, åñëè ïðè ñîçäàíèè ýêçåìïëÿðà ýòîãî îáúåêòà çíà÷åíèÿ åãî ñâîéñòâ íå óêàçàíû ÿâíûì îáðàçîì (òî åñòü èìåþò çíà÷åíèÿ null, 0 èëè ""). Ýòî äåëàåòñÿ ñ ïîìîùüþ ëîãè÷åñêîãî îïåðàòîðà ÈËÈ (îáîçíà÷àåìîãî ||) â êîíñòðóêòîðå îáúåêòà â âèäå ôóíêöèè:

function car(name, model, color) { // êîíñòðóêòîð îáúåêòà car
this.name = name || "íåèçâåñòíî"
this.model = model || "íåèçâåñòíî"
this.color = color || "black"
}
mycar = new car("Æèãóëè","") // ñîçäàíèå ýêçåìïëÿðà mycar îáúåêòà car
mycar.name // "Æèãóëè"
mycar.model // "íåèçâåñòíî"
mycar.color // "black"

9.2. Äîáàâëåíèå ñâîéñòâ
Åñëè âîçíèêàåò íåîáõîäèìîñòü äîáàâèòü íîâîå ñâîéñòâî ê ñóùåñòâóþùåìó îáúåêòó, à òàêæå êî âñåì åãî ýêçåìïëÿðàì, òî ýòî ìîæíî ñäåëàòü ñ ïîìîùüþ ñâîéñòâà prototype.  ïðèâåäåííîì íèæå ïðèìåðå ìû ñîçäàåì îáúåêò car (àâòîìîáèëü), çàòåì åãî ýêçåìïëÿð mycar, à çàòåì äîáàâëÿåì ê ñâîéñòâó prototype ñâîéñòâî owner (âëàäåëåö) ñ êîíêðåòíûì çíà÷åíèåì:

function car(name, model, color) { // êîíñòðóêòîð îáúåêòà car
this.name = name || "íåèçâåñòíî"
this.model = model || "íåèçâåñòíî"
this.color = color || "black"
}

mycar = new car("Æèãóëè","") /* ñîçäàíèå ýêçåìïëÿðà mycar îáúåêòà car */
mycar.name // "Æèãóëè"
mycar.model // "íåèçâåñòíî"
mycar.color // "black"
car.prototype.owner = "Èâàíîâ" // äîáàâëÿåì íîâîå ñâîéñòâî
mycar.owner // "Èâàíîâ"

Åñëè íóæíî äîáàâèòü íîâîå ñâîéñòâî òîëüêî ê êîíêðåòíîìó îáúåêòó (ê äàííîìó ýêçåìïëÿðó îáúåêòà), òî ýòî ìîæíî ñäåëàòü ïðîñòî ñ ïîìîùüþ îïåðàòîðà ïðèñâàèâàíèÿ:
èìÿÎáúåêòà.íîâîå_ñâîéñòâî = çíà÷åíèå

 ñëåäóþùåì ïðèìåðå ìû ñîçäàåì îáúåêò car âîîáùå áåç ñâîéñòâ, à çàòåì äîáàâëÿåì åãî ýêçåìïëÿðû è äîáàâëÿåì ê íèì ðàçëè÷íûå ñâîéñòâà.

function car(){}
mycar1 = new car()
mycar2 = new car()
mycar1.name = "Æèãóëè"
mycar2.model = "ÂÀÇ2106"

mycar1.name // "Æèãóëè"
mycar1.model // undefined (íå îïðåäåëåíî)
mycar2.name // undefined (íå îïðåäåëåíî)
mycar2.model // "ÂÀÇ2106"

9.3. Ñâÿçàííûå îáúåêòû
 îáúåêòå â âèäå ñâîéñòâà ìîæåò ñîäåðæàòüñÿ ññûëêà íà äðóãîé îáúåêò.  ýòîì ñëó÷àå îáà îáúåêòà îêàçûâàþòñÿ ñâÿçàííûìè: îäèí èç íèõ îêàçûâàåòñÿ ïîäîáúåêòîì èëè, äðóãèìè ñëîâàìè, ñâîéñòâîì äðóãîãî. Íàïðèìåð, ìû ìîæåì ñîçäàòü îáúåêò photo, ñîäåðæàùèé â êà÷åñòâå ñâîèõ ñâîéñòâ íàçâàíèå àâòîìîáèëÿ è URL-àäðåñ ôàéëà ñ åãî èçîáðàæåíèåì. Òàêîé îáúåêò ìîæíî ñâÿçàòü ñ îáúåêòîì car, ñîäåðæàùèì îñíîâíóþ èíôîðìàöèþ îá àâòîìîáèëÿõ, äîáàâèâ ê íåìó ñâîéñòâî, çíà÷åíèåì êîòîðîãî ÿâëÿåòñÿ ññûëêà íà îáúåêò photo.

Íèæå ïðèâåäåíû êîíñòðóêòîðû îáúåêòîâ car è photo. ×òîáû äîáàâèòü îáúåêò photo â îáúåêò car, ìû äîáàâèëè â îáúåêò car ñâîéñòâî, çíà÷åíèåì êîòîðîãî ÿâëÿåòñÿ ññûëêà íà îáúåêò photo.

function car(name, model, color, photo) { /* êîíñòðóêòîð îáúåêòà car */
this.name = name
this.model = model
this.color = color
this.photo = photo // ññûëêà íà îáúåêò photo
}

function photo (name, url) { // êîíñòðóêòîð îáúåêòà photo
this.name = name
this.url = url
}
Cîçäàäèì ïàðó êîíêðåòíûõ îáúåêòîâ, ÿâëÿþùèõñÿ ýêçåìïëÿðàìè îáúåêòà photo:
photo1=new photo("Ëàäà","/images/lada1.jpg")
photo2 =new photo("Ëàäà ","/images/lada2.gif")
Òåïåðü ñîçäàäèì ýêçåìïëÿðû îáúåêòà car:

mycar = new car("Ëàäà", "ÂÀÇ21099","white", photo1)
mycar.photo.url // "/images/lada1.jpg"
mycar.model // "ÂÀÇ21099"

mycar = new car("Îêà", "ÂÀÇ21099","white", photo2)
mycar.photo.url // "/images/lada2.gif"
mycar.model // "ÂÀÇ21099"

Îáðàòèòå âíèìàíèå, ÷òîáû óçíàòü çíà÷åíèå URL-àäðåñà ðàñïîëîæåíèÿ ôàéëà ñ êàðòèíêîé, îòíîñÿùåéñÿ ê îáúåêòó mycar, ìû îáðàùàåìñÿ ê ñâîéñòâó url îáúåêòà photo, êîòîðûé ñàì ÿâëÿåòñÿ ñâîéñòâîì îáúåêòà mycar èëè, äðóãèìè ñëîâàìè, ïîäîáúåêòîì îáúåêòà mycar.
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

Java Script Îáúåêò Object

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:27 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà Object ÿâëÿåòñÿ êîðíåâûì îáúåêòîì, íà êîòîðîì áàçèðóþòñÿ âñå îñòàëüíûå îáúåêòû JavaScript, òàêèå êàê String, Array, Date è ò. ä.  ïðîãðàììàõ ìîæíî ñîçäàâàòü ñâîè ñîáñòâåííûå îáúåêòû. Ýòî ìîæíî ñäåëàòü ðàçëè÷íûìè ñïîñîáàìè:

function èìÿ_êîíñòðóêòîðà([ïàð1,…[, ïàðN]){
êîä
}
èìÿÎáúåêòà = new èìÿ_êîíñòðóêòîðà(["ïàð1",…[, "ïàðN"])
èìÿÎáúåêòà = new Object()
èìÿÎáúåêòà.ñâîéñòâî = çíà÷åíèå
èìÿÎáúåêòà = {ñâîéñòâî1: çíà÷åíèå1 [, ñâîéñòâî2: çíà÷åíèå2 [,…,N]}

Äëÿ îáðàùåíèÿ ê ñâîéñòâàì è ìåòîäàì îáúåêòà èñïîëüçóåòñÿ ñëåäóþùèé ñèíòàêñèñ:
ññûëêà_íà_îáúåêò.ñâîéñòâî
ññûëêà_íà_îáúåêò.ìåòîä([ïàðàìåòðû])

Äîïóñòèì, íàïðèìåð, ÷òî íàì òðåáóåòñÿ ñîçäàòü îáúåêò Ñîòðóäíèê, êîòîðûé ñîäåðæàë áû ñâåäåíèÿ î ñîòðóäíèêàõ íåêîòîðîé ôèðìû, òàêèå êàê Èìÿ, Îòäåë, Òåëåôîí, Çàðïëàòà è ò. ï. Â ôèðìå ìîæåò áûòü ìíîãî ñîòðóäíèêîâ, íî ñâåäåíèÿ î íèõ ïðåäñòàâëÿþòñÿ â íåêîòîðîé åäèíîé ñòðóêòóðå. Ýòó ñòðóêòóðó ìîæíî ñîçäàòü ñ ïîìîùüþ êîíñòðóêòîðà îáúåêòà:

function Ñîòðóäíèê(Èìÿ, Îòäåë, Òåëåôîí, Çàðïëàòà) {
this.Èìÿ = Èìÿ
this.Îòäåë = Îòäåë
this.Òåëåôîí = Òåëåôîí
this.Çàðïëàòà = Çàðïëàòà
}

Êàê âèäèòå, êîíñòðóêòîð îáúåêòà ìîæåò áûòü ïðåäñòàâëåí â âèäå îïðåäåëåíèÿ ôóíêöèè. Êëþ÷åâîå ñâîéñòâî this ïðåäñòàâëÿåò ññûëêó íà òåêóùèé, òî åñòü îïðåäåëÿåìûé êîíñòðóêòîðîì îáúåêò. Âñå îïåðàòîðû ïðèñâàèâàíèÿ ñ this, ðàñïîëîæåííûå â òåëå ôóíêöèè-êîíñòðóêòîðà, îïðåäåëÿþò ñâîéñòâà îáúåêòà.  êðóãëûõ ñêîáêàõ ó èìåíè îáúåêòà ìîãóò ïåðå÷èñëÿòüñÿ ïàðàìåòðû, ÷òîáû èìåòü âîçìîæíîñòü ñîçäàòü êîíêðåòíûé îáúåêò, ÿâëÿþùèéñÿ ýêçåìïëÿðîì îáåçëè÷åííîãî îáúåêòà Ñîòðóäíèê, è ïðèñâîèòü åãî ñâîéñòâàì êîíêðåòíûå çíà÷åíèÿ. Íàïðèìåð, ñîçäàäèì êîíêðåòíîãî ñîòðóäíèêà — agent007:
agent007 = new Ñîòðóäíèê("Äæåéìñ Áîíä", 5, "223-332", 3600.50)

Äîñòóï ê ñâîéñòâàì ýòîãî îáúåêòà ïðîèçâîäèòñÿ îáû÷íûì ñïîñîáîì:
agent007.Èìÿ // "Äæåéìñ Áîíä"
agent007.Çàðïëàòà // 3600.5

Èíôîðìàöèÿ î íîâîì ñîòðóäíèêå äîáàâëÿåòñÿ àíàëîãè÷íûì îáðàçîì:
Shtirlitz = new Ñîòðóäíèê("Ìàêñèìîâ", 4, "123-4567",4500.50)
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

JavaScript Îáúåêò Boolean (Ëîãè÷åñêèé)

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:25 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà Îáúåêò Boolean ñîçäàåòñÿ ñ ïîìîùüþ âûðàæåíèÿ âèäà:
ïåðåìåííàÿ = new Boolean(ëîãè÷åñêîå_çíà÷åíèå)
Îí èìååò ñâîéñòâî prototype è ìåòîäû toString() è çíà÷ue Of(), êîòîðûå èìåþò òàêæå îáúåêòû String è Number. Ñìûñë ñâîéñòâà prototype ìû óæå ðàññìàòðèâàëè ïðèìåíèòåëüíî ê îáúåêòàì String è Array. Îáúåêò Boolean ìîæåò ïîíàäîáèòüñÿ â òîì ñëó÷àå, êîäà âñåì ëîãè÷åñêèì îáúåêòàì, ñîçäàâàåìûì ñ ïîìîùüþ âûðàæåíèÿ ñ êëþ÷åâûìè ñëîâàìè new Boolean íóæíî äîáàâèòü íîâûå ñâîéñòâà èëè ìåòîäû ñ ïîìîùüþ ïðîòîòèïà (ñâîéñòâà prototype).
8.7. Îáúåêò Function (Ôóíêöèÿ)
Ñîçäàíèå îáúåêòà Function Âûøå ìû óæå ðàññìàòðèâàëè ñòàíäàðòíûé ñïîñîá îïðåäåëåíèÿ ôóíêöèè:

function èìÿ_ôóíêöèè(ïàðàìåòðû) {
êîä
}

Ñóùåñòâóåò è äðóãîé ñïîñîá, îñíîâàííûé íà âûðàæåíèè ñ êëþ÷åâûìè ñëîâàìè new Function. Ñîãëàñíî ýòîìó ñïîñîáó ôóíêöèÿ ñîçäàåòñÿ êàê ýêçåìïëÿð îáúåêòà Function:
èìÿ_ôóíêöèè = new Function(["ïàð1", [,"ïàðN"], "îïåðàòîð1; [; îïåðàòîðN]")

Íàçâàíèÿ âñåõ ïàðàìåòðîâ ÿâëÿþòñÿ ñòðîêîâûìè çíà÷åíèÿìè. Îíè ðàçäåëÿþòñÿ çàïÿòûìè. Çàêëþ÷èòåëüíàÿ ñòðîêà ñîäåðæèò îïåðàòîðû êîäà òåëà ôóíêöèè, ðàçäåëåííûå òî÷êîé ñ çàïÿòîé. Âûçîâ ôóíêöèè, îïðåäåëåííîé êàê ýêçåìïëÿð îáúåêòà Function, ìîæíî âûïîëíèòü îáû÷íûì ñïîñîáîì: èìÿ_ôóíêöèè(ïàðàìåòðû).

Ïðè ëþáîì çàäàíèè ôóíêöèè, ñòàíäàðòíîì èëè ñ ïîìîùüþ êëþ÷åâîãî ñëîâà new, àâòîìàòè÷åñêè ñîçäàåòñÿ ýêçåìïëÿð îáúåêòà Function, êîòîðûé îáëàäàåò ñâîèìè ñâîéñòâàìè è ìåòîäàìè.

Ñâîéñòâà Function

arguments — ìàññèâ çíà÷åíèé ïàðàìåòðîâ, ïåðåäàííûõ ôóíêöèè.
Èíäåêñàöèÿ ýëåìåíòîâ ìàññèâà ïðîèçâîäèòñÿ ñ 0. Ïîñêîëüêó ýòî ìàññèâ, îí èìååò ñâîéñòâà è ìåòîäû îáúåêòà Array (â ÷àñòíîñòè, ñâîéñòâî length —äëèíà ìàññèâà).
Ñâîéñòâî arguments ïðèìåíÿåòñÿ â òåëå îïðåäåëåíèÿ ôóíêöèè, êîãäà òðåáóåòñÿ ïðîàíàëèçèðîâàòü ïàðàìåòðû, ïåðåäàííûå åé ïðè âûçîâå. Íàïðèìåð, ìîæíî óçíàòü, ñêîëüêî â äåéñòâèòåëüíîñòè áûëî ïåðåäàíî ïàðàìåòðîâ, íå ÿâëÿþòñÿ ëè èõ çíà÷åíèÿ ïóñòûìè ("", 0, null) è ò. ï. Ýòî ñâîéñòâî îñîáåííî ïîëåçíî ïðè ðàçðàáîòêå óíèâåðñàëüíûõ áèáëèîòå÷íûõ ôóíêöèé.
Ñèíòàêñèñ âûðàæåíèÿ ñëåäóþùèé: èìÿ_ôóíêöèè.arguments.

length — êîëè÷åñòâî ïàðàìåòðîâ, óêàçàííûõ â îïðåäåëåíèè ôóíêöèè.
Ñèíòàêñèñ: èìÿ_ôóíêöèè.length
 îòëè÷èå îò ñâîéñòâà arguments, êîëè÷åñòâî ïàðàìåòðîâ ôóíêöèè ìîæíî îïðåäåëèòü â ïðîãðàììå çà ïðåäåëàìè òåëà ýòîé ôóíêöèè.
Ïðèìåð:

function myfunc(a, b, c, d){
return myfunc.arguments.length
}
myfunc(a,b) // 2
myfunc.length // 4

caller — ñîäåðæèò ññûëêó íà ôóíêöèþ, èç êîòîðîé áûëà âûçâàíà äàííàÿ ôóíêöèÿ; åñëè ôóíêöèÿ íå âûçûâàëàñü èç äðóãîé ôóíêöèè, òî çíà÷åíèå ýòîãî ñâîéñòâà ðàâíî null.
Ñîâìåñòèìîñòü: IE4+, NN4
Ñèíòàêñèñ: èìÿ_ôóíêöèè.caller
 ñâîéñòâå èìÿ_ôóíêöèè.caller ñîäåðæèòñÿ âñå îïðåäåëåíèå ôóíêöèè, èç êîòîðîé áûëà âûçâàíà ôóíêöèÿ èìÿ_ôóíêöèè.

Ìåòîäû Function

toString() — âîçâðàùàåò îïðåäåëåíèå ôóíêöèè â âèäå ñòðîêè.
Ñèíòàêñèñ: èìÿ_ôóíêöèè.toString()

apply( [òåêóùèé_îáúåêò [, ìàññèâ_ïàðàìåòðîâ]])

call( [òåêóùèé_îáúåêò [,ïàð1[,ïàð2[,…, ïàðN]]]])

Îáà ìåòîäà èñïîëüçóþòñÿ äëÿ âûçîâà ôóíêöèè è äàþò îäèíàêîâûå ðåçóëüòàòû. Îòëè÷àþòñÿ îíè ëèøü ôîðìîé ïðåäñòàâëåíèÿ ïàðàìåòðîâ. Êàê èçâåñòíî, ôóíêöèþ ìîæíî âûçâàòü ïðîñòî ïî èìåíè, çà êîòîðûì ñëåäóåò ñïèñîê ïàðàìåòðîâ â êðóãëûõ ñêîáêàõ. Îñîáåííîñòüþ ýòèõ ìåòîäîâ ÿâëÿåòñÿ òî, ÷òî ñ èõ ïîìîùüþ ìîæíî âûçâàòü ôóíêöèþ ïî ññûëêå íà íåå.
Ïåðâûé ïàðàìåòð îáîèõ ìåòîäîâ — ññûëêà íà îáúåêò, ÿâëÿþùèéñÿ òåêóùèì äëÿ äàííîé ôóíêöèè. Ññûëêà íà îáúåêò èñïîëüçóåòñÿ, êîãäà âûçûâàåìàÿ ôóíêöèÿ îïðåäåëåíà êàê ìåòîä ïîëüçîâàòåëüñêîãî îáúåêòà.
Ñ ïîìîùüþ ìåòîäà call() ìîæíî ïåðåäàâàòü ïàðàìåòðû, îòäåëåííûå äðóã îò äðóãà çàïÿòûìè. Åñëè ïàðàìåòðû îïðåäåëåíû êàê ýëåìåíòû ìàññèâà, òî âìåñòî call() èñïîëüçóåòñÿ ìåòîä apply().
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

JavaScript Îáúåêò äàòà

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:25 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà 8.5. Îáúåêò Date (Äàòà)
Âî ìíîãèõ ïðèëîæåíèÿõ ïðèõîäèòñÿ îòîáðàæàòü äàòó è âðåìÿ, ïîäñ÷èòûâàòü êîëè÷åñòâî äíåé, îñòàâøèõñÿ äî çàäàííîé äàòû è ò. ï. Íåêîòîðûå ïðîãðàììû äàæå óïðàâëÿþòñÿ ïîñðåäñòâîì çíà÷åíèé äàò è âðåìåíè.  îñíîâå âñåõ îïåðàöèé, ñâÿçàííûõ ñ äàòàìè è âðåìåíåì, ëåæàò òåêóùèå ñèñòåìíûå äàòà è âðåìÿ, óñòàíîâëåííûå íà âàøåì êîìïüþòåðå. Ñî âðåìåíåì äåëà îáñòîÿò íå òàê ïðîñòî, êàê êàæåòñÿ íà ïåðâûé âçãëÿä. Âñïîìíèòå, ÷òî ñóùåñòâóþò âðåìåííûå çîíû (÷àñîâûå ïîÿñà), à òàêæå ñåçîííûå ïîïðàâêè âðåìåíè. Òàê íàïðèìåð, òåêóùåå âðåìÿ â Ñàíêò-Ïåòåðáóðãå îòëè÷àåòñÿ îò âðåìåíè â Èðêóòñêå íà 5 ÷àñîâ. Åñëè â Èðêóòñêå óæå ïîëíî÷ü, òî â Ïåòåðáóðãå åùå òîëüêî 19 ÷àñîâ. ×òîáû èìåòü âîçìîæíîñòü êîîðäèíèðîâàòü äåÿòåëüíîñòü âî âðåìåíè îðãàíèçàöèé è ôèçè÷åñêèõ ëèö â ðàçëè÷íûõ òî÷êàõ íàøåé ïëàíåòû, áûëà ââåäåíà ñèñòåìà îòñ÷åòà âðåìåíè. Îíà ñâÿçàíà ñ ìåðèäèàíîì, ïðîõîäÿùèì ÷åðåç àñòðîíîìè÷åñêóþ îáñåðâàòîðèþ â ãîðîäå Ãðèíâè÷ â Âåëèêîáðèòàíèè. Ýòó âðåìåííóþ çîíó íàçûâàþò cðåäíèì âðåìåíåì ïî Ãðèíâè÷ó (Greenwich Mean Time — GMT). Íåäàâíî êðîìå àááðåâèàòóðû GMT ñòàëè èñïîëüçîâàòü åùå îäíó — UTC (Coordinated Universal Time — Âñåîáùåå Ñêîîðäèíèðîâàííîå Âðåìÿ).

Åñëè ñèñòåìíûå ÷àñû âàøåãî êîìïüþòåðà óñòàíîâëåíû ïðàâèëüíî, òî îòñ÷åò âðåìåíè ïðîèçâîäèòñÿ â ñèñòåìå GMT. Îäíàêî íà Ïàíåëè óïðàâëåíèÿ îáû÷íî óñòàíàâëèâàåòñÿ ëîêàëüíîå âðåìÿ, ñîîòâåòñòâóþùåå âàøåìó ÷àñîâîìó ïîÿñó. Ïðè ñîçäàíèè è èçìåíåíèè ôàéëîâ íà âàøåì êîìïüþòåðå ôèêñèðóåòñÿ èìåííî ëîêàëüíîå âðåìÿ. Âìåñòå ñ òåì îïåðàöèîííàÿ ñèñòåìà çíàåò ðàçíèöó ìåæäó ëîêàëüíûì âðåìåíåì è GMT. Ïðè ïåðåìåùåíèè êîìïüþòåðà èç îäíîãî ÷àñîâîãî ïîÿñà â äðóãîé, íåîáõîäèìî èçìåíèòü óñòàíîâêè èìåííî ÷àñîâîãî ïîÿñà, à íå òåêóùåãî ñèñòåìíîãî âðåìåíè (ïîêàçàíèÿ ñèñòåìíûõ ÷àñîâ). Äàòû è âðåìÿ, ãåíåðèðóåìûå â ñöåíàðèÿõ, ñîõðàíÿþòñÿ â ïàìÿòè â ñèñòåìå GMT, íî ïîëüçîâàòåëþ âûâîäÿòñÿ, êàê ïðàâèëî, â ëîêàëüíîì âèäå.  ïðîãðàììå íà JavaScript íåëüçÿ ïðîñòî íàïèñàòü 30.10.2002, ÷òîáû ïîëó÷èòü çíà÷åíèå äàòû, ñ êîòîðûì â äàëüíåéøåì ìîæíî ïðîèçâîäèòü íåêèå îïåðàöèè. Çíà÷åíèÿ äàòû è âðåìåíè ñîçäàþòñÿ êàê ýêçåìïëÿðû ñïåöèàëüíîãî îáúåêòà Date. Ïðè ýòîì îáúåêò ñàì áóäåò «çíàòü», ÷òî íå áûâàåò 31 èþíÿ è 30 ôåâðàëÿ, à â âèñîêîñíûõ ãîäàõ 366 äíåé.

Ñîçäàíèå îáúåêòà äàòû

Îáúåêò äàòû ñîçäàåòñÿ ñ ïîìîùüþ âûðàæåíèÿ âèäà:
èìÿÎáúåêòàÄàòû = new Date([ïàðàìåòðû])
Ïàðàìåòðû íå îáÿçàòåëüíû, íà ÷òî óêàçûâàþò êâàäðàòíûå ñêîáêè. Îáðàòèòå âíèìàíèå, ÷òî èìÿÎáúåêòàÄàòû ÿâëÿåòñÿ îáúåêòîì äàòû, à íå çíà÷åíèåì êàêîãî-íèáóäü äðóãîãî òèïà (íàïðèìåð, ñòðîêîé èëè ÷èñëîì). Äëÿ ìàíèïóëÿöèé ñ îáúåêòîì äàòû ïðèìåíÿåòñÿ ìíîæåñòâî ìåòîäîâ îáúåêòà Date. Ïðè ýòîì èñïîëüçóåòñÿ òàêîé ñèíòàêñèñ:
ïåðåìåííàÿ = èìÿÎáúåêòàÄàòû.ìåòîä()
Åñëè, íàïðèìåð, îáúåêòó äàòû òðåáóåòñÿ ïðèñâîèòü íîâîå çíà÷åíèå, òî äëÿ ýòîãî èñïîëüçóåòñÿ ñîîòâåòñòâóþùèé ìåòîä:
ïåðåìåííàÿ = èìÿÎáúåêòàÄàòû.ìåòîä(íîâîå_çíà÷åíèå)

Ðàññìîòðèì â êà÷åñòâå ïðèìåðà èçìåíåíèå çíà÷åíèÿ ãîäà òåêóùåé ñèñòåìíîé äàòû:

xdate = new Date() /* ñîçäàíèå îáúåêòà, ñîäåðæàùåãî òåêóùóþ äàòó è âðåìÿ */
Year = xdate.getYear() /* â ïåðåìåííîé Year ñîäåðæèòñÿ çíà÷åíèå òåêóùåãî ãîäà */
Year = Year + 3 /* â ïåðåìåííîé Year ñîäåðæèòñÿ çíà÷åíèå,
áîëüøåå, ÷åì òåêóùèé ãîä íà 3 */
xdate.setYear(Year) /* â îáúåêòå óñòàíàâëèâàåòñÿ íîâîå
çíà÷åíèå ãîäà */

Ïðè ñîçäàíèè îáúåêòà äàòû ñ ïîìîùüþ âûðàæåíèÿ new Date(), ìîæíî óêàçàòü â êà÷åñòâå ïàðàìåòðîâ, êàêóþ äàòó è âðåìÿ ñëåäóåò óñòàíîâèòü â ýòîì îáúåêòå. Ýòî ìîæíî ñäåëàòü ïÿòüþ ñïîñîáàìè:

new Date("Ìåñÿö ää, ãããã ÷÷:ìì:ññ")
new Date("Ìåñÿö ää, ãããã")
new Date(ãã, ìì, ää, ÷÷, ìì, ññ)
new Date(ãã, ìì, ää)
new Date(ìèëèñåêóíäû)

 ïåðâûõ äâóõ ñïîñîáàõ ïàðàìåòðû çàäàþòñÿ â âèäå ñòðîêè, â êîòîðîé óêàçàíû êîìïîíåíòû äàòû è âðåìåíè. Áóêâåííûå îáîçíà÷åíèÿ îïðåäåëÿþò øàáëîí ïàðàìåòðîâ. Îáðàòèòå âíèìàíèå íà ðàçäåëèòåëè — çàïÿòûå è äâîåòî÷èÿ. Âðåìÿ óêàçûâàòü íå îáÿçàòåëüíî. Åñëè êîìïîíåíòû âðåìåíè îïóùåíû, òî óñòàíàâëèâàåòñÿ çíà÷åíèå 0 (ïîëíî÷ü). Êîìïîíåíòû äàòû îáÿçàòåëüíî äîëæíû áûòü óêàçàíû. Ìåñÿö óêàçûâàåòñÿ êàê ïîëíîå åãî àíãëèéñêîå íàçâàíèå (àááðåâèàòóðû íå äîïóñêàþòñÿ). Îñòàëüíûå êîìïîíåíòû óêàçûâàþòñÿ â âèäå ÷èñåë. Åñëè ÷èñëî ìåíüøå 10, òî ìîæíî ïèñàòü îäíó öèôðó, íå çàïèñûâàÿ âåäóùèé 0 (íàïðèìåð, 3:05:32).  òðåòüåì è ÷åòâåðòîì ñïîñîáàõ êîìïîíåíòû äàòû è âðåìåíè ïðåäñòàâëÿþòñÿ öåëûìè ÷èñëàìè, ðàçäåëåííûìè çàïÿòûìè.  ïîñëåäíåì ñïîñîáå äàòà è âðåìÿ çàäàþòñÿ öåëûì ÷èñëîì, êîòîðîå ïðåäñòàâëÿåò êîëè÷åñòâî ìèëëèñåêóíä, ïðîøåäøèõ ñ íà÷àëà 1 ÿíâàðÿ 1970 ãîäà (òî åñòü ñ ìîìåíòà 00:00:00). Êîëè÷åñòâî ìèëëèñåêóíä, îòñ÷èòàííîå îò óêàçàííîé ñòàðòîâîé äàòû, ïîçâîëÿåò âû÷èñëèòü âñå êîìïîíåíòû è äàòû, è âðåìåíè.

Ìåòîäû îáúåêòà Date

Äëÿ ÷òåíèÿ è èçìåíåíèÿ èíôîðìàöèè î äàòå è âðåìåíè, õðàíÿùåéñÿ â îáúåêòå äàòû, ñëóæàò ìåòîäû îáúåêòà Date (ñì. òàáëèöó). Íàïîìíèì, ÷òî îáúåêò äàòû ñîçäàåòñÿ ñ ïîìîùüþ âûðàæåíèÿ:
èìÿÎáúåêòàÄàòû = new Date([ïàðàìåòðû])
Çàòåì, ÷òîáû ïðèìåíèòü ìåòîä ìåòîä() ê îáúåêòó äàòû èìÿÎáúåêòàÄàòû, ñëåäóåò íàïèñàòü: èìÿÎáúåêòàÄàòû.ìåòîä([ïàðàìåòðû]). Äîâîëüíî áîëüøîå ìíîæåñòâî âñåõ ìåòîäîâ ìîæíî ðàçäåëèòü íà äâå êàòåãîðèè: ìåòîäû ïîëó÷åíèÿ çíà÷åíèé (èõ íàçâàíèÿ èìåþò ïðåôèêñ get) è ìåòîäû óñòàíîâêè íîâûõ çíà÷åíèé (èõ íàçâàíèÿ èìåþò ïðåôèêñ set).  êàæäîé êàòåãîðèè âûäåëÿþòñÿ äâå ãðóïïû ìåòîäîâ — äëÿ ëîêàëüíîãî ôîðìàòà è ôîðìàòà UTC. Ìåòîäû ïîçâîëÿþò ðàáîòàòü ñ îòäåëüíûìè êîìïîíåíòàìè äàòû è âðåìåíè (ãîäîì, ìåñÿöåì, ÷èñëîì, äíåì íåäåëè, ÷àñàìè, ìèíóòàìè, ñåêóíäàìè è ìèëèñåêóíäàìè).

Ìåòîäû îáúåêòà Date

Ìåòîä Äèàïàçîí çíà÷åíèé Îïèñàíèå
getFullYear( ) 1970–... ãîä
getYear( ) 70–... ãîä
getMonth( ) 0–11 ìåñÿö (ÿíâàðü = 0)
getDate( ) 1–31 ÷èñëî
getDay( ) 0–6 äåíü íåäåëè (âîñêðåñåíüå = 0)
getHours( ) 0–23 ÷àñû â 24-÷àñîâîì ôîðìàòå
getMinutes( ) 0–59 ìèíóòû
getSeconds( ) 0–59 ñåêóíäû
getTime( ) 0–… ìèëëèñåêóíäû ñ 1.1.70 00:00:00 GMT
getMilliseconds( ) 0–… ìèëëèñåêóíäû ñ 1.1.70 00:00:00 GMT
getUTCFullYear( ) 1970-... ãîä UTC
getUTCMonth( ) 0–11 ìåñÿö UTC (ÿíâàðü = 0)
getUTCDate( ) 1–31 ÷èñëî UTC
getUTCDay( ) 0–6 äåíü íåäåëè UTC (âîñêðåñåíüå = 0)
getUTCHours( ) 0–23 ÷àñû UTC â 24-÷àñîâîì ôîðìàòå
getUTCMinutes( ) 0–59 ìèíóòû UTC
getUTCSeconds() 0–59 ñåêóíäû UTC
getUTCMilliseconds( ) 0–.... ìèëëèñåêóíäû UTC ñ 1.1.70 00:00:00 GMT
setYear(çíà÷) 1970–... óñòàíîâêà ãîäà (÷åòûðåõçíà÷íîãî)
SetFullYear(çíà÷) 1970–… óñòàíîâêà ãîäà
setMonth(çíà÷) 0–11 óñòàíîâêà ìåñÿöà (ÿíâàðü = 0)
setDate(çíà÷) 1–31 óñòàíîâêà ÷èñëà
setDay(çíà÷) 0–6 óñòàíîâêà äíÿ íåäåëè (âîñêðåñåíüå = 0)
setHours(çíà÷) 0–23 óñòàíîâêà ÷àñîâ â 24-÷àñîâîì ôîðìàòå
setMinutes(çíà÷) 0–59 óñòàíîâêà ìèíóò
setSeconds(çíà÷) 0–59 óñòàíîâêà ñåêóíä
setMilliseconds(çíà÷) 0–… óñòàíîâêà ìèëëèñåêóíä ñ 1.1.70 00:00:00 GMT
setTime(çíà÷) 0–… óñòàíîâêà ìèëëèñåêóíä ñ 1.1.70 00:00:00 GMT
setUTCFullYear(çíà÷) 1970–… óñòàíîâêà ãîäà UTC
setUTCMonth(çíà÷) 0–11 óñòàíîâêà ìåñÿöà UTC (ßíâàðü = 0)
setUTCDate(çíà÷) 1–31 óñòàíîâêà ÷èñëà UTC
setUTCDay(çíà÷) 0–6 óñòàíîâêà äíÿ íåäåëè UTC (âîñêðåñåíüå = 0 )
setUTCHours(çíà÷) 0–23 óñòàíîâêà ÷àñîâ UTC â 24-÷àñîâîì ôîðìàòå
setUTCMinutes(çíà÷) 0–59 óñòàíîâêà ìèíóò UTC
setUTCSeconds(çíà÷) 0–59 óñòàíîâêà ñåêóíä UTC
setUTCMilliseconds(çíà÷)0–… óñòàíîâêà ìèëëèñåêóíä UTC ñ 1.1.70 00:00:00 GMT
getTimezoneOffset ( ) 0–… ðàçíèöà â ìèíóòàõ ïî îòíîøåíèþ ê GMT/UTC
toDateString( ) ñòðîêà ñ äàòîé (áåç âðåìåíè) â ôîðìàòå áðàóçåðà (IE5.5)
toGMTString( ) ñòðîêà ñ äàòîé è âðåìåíåì â ãëîáàëüíîì ôîðìàòå
toLocaleDateString( ) ñòðîêà ñ äàòîé áåç âðåìåíè â ëîêàëèçîâàííîì ôîðìàòå ñèñòåìû (NN6, IE5.5)
toLocaleString( ) ñòðîêà ñ äàòîé è âðåìåíåì â ëîêàëèçîâàííîì ôîðìàòå ñèñòåìû
toLocaleTimeString( ) ñòðîêà ñ âðåìåíåì áåç äàòû è â ëîêàëèçîâàííîì ôîðìàòå ñèñòåìû (NN6, IE5.5)
toString( ) ñòðîêà ñ äàòîé è âðåìåíåì â ôîðìàòå áðîóçåðà
toTimeString( ) ñòðîêà ñ âðåìåíåì áåç äàòû â ôîðìàòå áðîóçåðà (IE5.5)
toUTCString() ñòðîêà ñ äàòîé è âðåìåíåì â ãëîáàëüíîì ôîðìàòå
Date.parse("dateString") ïðåîáðàçîâàíèå ñòðîêè ñ äàòîé â ÷èñëî ìèëëèñåêóíä
Date.UTC(çíà÷) ïðåîáðàçîâàíèå ñòðîêè ñ äàòîé GMT â ÷èñëî

Âû÷èñëÿòü ðàçíîñòü äâóõ äàò èëè ñîçäàâàòü ñ÷åò÷èê âðåìåíè, îñòàâøåãîñÿ äî íåêîòîðîãî çàäàííîãî ñðîêà, ìîæíî ñ ïîìîùüþ ìåòîäîâ êàê äëÿ ëîêàëüíîãî ôîðìàòà, òàê è UTC. Íå ñëåäóåò ïðèìåíÿòü âûðàæåíèÿ, èñïîëüçóþùèìè ðàçëè÷íûå ôîðìàòû âðåìåíè, ïîñêîëüêó ðåçóëüòàòû ìîãóò îêàçàòüñÿ íåïðàâèëüíûìè. Ôîðìàò UTC îáû÷íî ïðèìåíÿåòñÿ â ðàñ÷åòàõ, ó÷èòûâàþùèõ ÷àñîâîé ïîÿñ. Ñëåäóåò òàêæå ó÷èòûâàòü, ÷òî íóìåðàöèÿ ìåñÿöåâ, äíåé íåäåëè, ÷àñîâ, ìèíóò è ñåêóíä íà÷èíàåòñÿ ñ 0. Äëÿ êîìïîíåíò âðåìåíè ýòî åñòåñòâåííî. Îäíàêî ïðè òàêîé íóìåðàöèè äåêàáðü îêàçûâàåòñÿ 11-ì ìåñÿöåì â ãîäó, à íå 12-ì, êàê ýòî ïðèíÿòî ïîâñåìåñòíî. Âîñêðåñåíüå (Sunday) ÿâëÿåòñÿ 0-ì äíåì íåäåëè, à íå 7-ì. Çíà÷åíèå ãîäà XX âåêà ïðåäñòàâëÿåòñÿ â äâóõçíà÷íîì ôîðìàòå êàê ðàçíîñòü ìåæäó ýòèì ãîäîì è 1900. Íàïðèìåð, 1996 ãîä ïðåäñòàâëÿåòñÿ êàê 96. Ãîäû äî 1900 è ïîñëå 1999 îáîçíà÷àþòñÿ â ÷åòûðåõçíà÷íîì ôîðìàòå. Íàïðèìåð, 2005 ãîä íóæíî òàê è ïèñàòü — 2005, ïîñêîëüêó 05 ýòî 1905 ãîä. Ìåòîä getFullYear() âîçâðàùàåò ÷åòûðåõçíà÷íîå çíà÷åíèå ãîäà.

Èçìåíåíèå ëþáîé êîìïîíåíòû äàòû ïðîèçâîäèòñÿ ñ ïîìîùüþ ñîîòâåòñòâóþùåãî ìåòîäà, íàçâàíèå êîòîðîãî íà÷èíàåòñÿ ñ ïðèñòàâêè set. Ïðè ýòîì çíà÷åíèÿ äðóãèõ êîìïîíåíò ïåðåñ÷èòûâàþòñÿ àâòîìàòè÷åñêè.

 ñëåäóþùåì ïðèìåðå ìû ñîçäàåì îáúåêò äàòû, ñîäåðæàùèé íåêîòîðóþ êîíêðåòíóþ äàòó. Çàòåì ìû óñòàíàâëèâàåì íîâîå çíà÷åíèå ãîäà. Ïðè ýòîì â îáúåêòå äàòû èçìåíÿåòñÿ è ÷èñëî. Ïðè ïîïûòêå îòîáðàçèòü çíà÷åíèå îáúåêòà äàòû îíî àâòîìàòè÷åñêè ïðåîáðàçóåòñÿ â ñòðîêó ìåòîäîì toString(). Ôîðìàò ýòîé ñòðîêè çàâèñèò îò îïåðàöèîííîé ñèñòåìû è áðàóçåðà. Íàïðèìåð, äëÿ Windows 98 è Internet Explorer 5.5+ ñòðîêà, ñîäåðæàùàÿ èíôîðìàöèþ îáúåêòà äàòû, èìååò ñëåäóþùèé âèä: Thu Oct 31 13:16:23 UTC+0300 2002, òî åñòü ÷åòâåðã, îêòÿáðü, 31, 13 ÷àñîâ 16 ìèíóò 23 ñåêóíäû Âñåîáùåãî âðåìåíè, ñêîððåêòèðîâàííîãî íà 3 ÷àñà, 2002 ãîä
Åñëè êîððåêöèþ âðåìåíè ñ ó÷åòîì ÷àñîâîãî ïîÿñà ïðîèçâîäèòü íå òðåáóåòñÿ, òî äëÿ ñòðîêîâîãî ïðåäñòàâëåíèÿ äàòû è âðåìåíè ìîæíî âîñïîëüçîâàòüñÿ ìåòîäîì toLocaleString():

mydate = new Date()
mydate.toLocaleString() // "1 äåêàáðÿ 2004 ã. 14:13:36"

 áðàóçåðàõ IE5.5+ è NN6+ ðàáîòàþò åùå äâà ìåòîäà ïðåäñòàâëåíèÿ îòäåëüíî äàòû è âðåìåíè â âèäå ñòðîêè:

mydate = new Date()
mydate.toLocaleDateString() // "1 äåêàáðÿ 2004 ã."
mydate.toLocaleTimeString() // "14:13:36"

Çàìåòèì, ÷òî ôîðìàò ïðåäñòàâëåíèÿ äàòû è âðåìåíè, îáåñïå÷èâàåìûé ìåòîäàìè toLocalDateString() è toLocalTimeString(), çàâèñèò îò íàñòðîåê îïåðàöèîííîé ñèñòåìû è áðàóçåðà. Åñëè âû áóäåòå èñïîëüçîâàòü ýòè ìåòîäû äëÿ âûâîäà äàòû è âðåìåíè íà Web-ñòðàíèöó, òî îíè áóäóò âûãëÿäåòü òàê, êàê ïîëüçîâàòåëü ïðèâûê èõ âèäåòü íà ñâîåì êîìïüþòåðå. Ñ äàòîé èíîãäà ïðèõîäèòñÿ âûïîëíÿòü ðàçëè÷íûå âû÷èñëåíèÿ, òàêèå, êàê îïðåäåëåíèå äàòû ÷åðåç çàäàííîå êîëè÷åñòâî äíåé îò òåêóùåé, èëè êîëè÷åñòâî äíåé ìåæäó äâóìÿ äàòàìè. Âîò çäåñü êàê ðàç è òðåáóåòñÿ ïðåäâàðèòåëüíûé ïîäñ÷åò ìèëëèñåêóíä, ñîäåðæàùèõñÿ â ìèíóòå, ÷àñå, ñóòêàõ è ò. ä.

Ïðèìåðû:
Îïðåäåëèì äàòó, êîòîðàÿ íàñòóïèò ÷åðåç íåäåëþ îòíîñèòåëüíî òåêóùåé:

week = 1000*60*60*24*7 /* êîëè÷åñòâî ìèëëèñåêóíä â íåäåëå — 604800000 */
mydate = new Date() // îáúåêò äàòû ñ òåêóùåé äàòîé
mydate_ms = mydate.getTime() /* òåêóùàÿ äàòà, ïðåäñòàâëåííàÿ êîëè÷åñòâîì ìèëëèñåêóíä îò 1.01.1970 00:00:00 */
mydate_ms += week // maydate_ms = mydate_ms + week
mydate.setTime(mydate_ms) /* óñòàíîâêà íîâîé äàòû â îáúåêòå mydate */
newdate = mydate.toLocaleString() /* íîâàÿ äàòà â âèäå ñòðîêè */

Îïðåäåëèì êîëè÷åñòâî äíåé ìåæäó äâóìÿ äàòàìè, íàïðèìåð, 10 ôåâðàëÿ 2004 è 5 ìàðòà 2004. Äëÿ ýòîãî ñîçäàäèì ñíà÷àëà äâà ñîîòâåòñòâóþùèõ îáúåêòà äàòû:
date1 = new Date(2004,01,10)
date2 = new Date(2004,02,5)

Ïåðåìåííûå date1 è date2 ñîäåðæàò äëèííûå ñòðîêè, ñîäåðæàùèå äàòû (íàïðèìåð, Mon Feb 10 00:00:00 UTC+0300 2003). ×òîáû ïåðåâåñòè èõ â êîëè÷åñòâà ìèëëèñåêóíä, âîñïîëüçóåìñÿ ìåòîäîì parse() îáúåêòà Date. Çàòåì âû÷èñëèì ðàçíîñòü Date.parse(date2) è Date.parse(date1) è ðàçäåëèì åå íà êîëè÷åñòâî ìèëëèñåêóíä â îäíèõ ñóòêàõ:
days = (Date.parse(date2) - Date.parse(date1))/1000/60/60/24 // ðåçóëüòàò: 24
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

Îáúåêò Math (Ìàòåìàòèêà)

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:24 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà Îáúåêò Math (Ìàòåìàòèêà)
Îáúåêò Math ïðåäíàçíà÷åí äëÿ õðàíåíèÿ íåêîòîðûõ ìàòåìàòè÷åñêèõ êîíñòàíò (íàïðèìåð, ÷èñëî π) è âûïîëíåíèÿ ïðåîáðàçîâàíèé ÷èñåë ñ ïîìîùüþ òèïè÷íûõ ìàòåìàòè÷åñêèõ ôóíêöèé. Äîñòóï ê ñâîéñòâàì è ìåòîäàì îáúåêòà Math îáåñïå÷èâàåòñÿ ñëåäóþùèìè âûðàæåíèÿìè:
Math.ñâîéñòâî
Math.ìåòîä(ïàðàìåòðû)

Ñâîéñòâà Math

Ñâîéñòâà îáúåêòà Math èìåþò â êà÷åñòâå ñâîèõ çíà÷åíèé ìàòåìàòè÷åñêèå êîíñòàíòû.

Å ïîñòîÿííàÿ ýéëåðà
LN10 çíà÷åíèå íàòóðàëüíîãî ëîãàðèôìà ÷èñëà 10
LN2 çíà÷åíèå íàòóðàëüíîãî ëîãàðèôìà ÷èñëà 2
LOG10E çíà÷åíèå äåñÿòè÷íîãî ëîãàðèôìà ýêñïîíåíòû (÷èñëà e)
LOG2E çíà÷åíèå äâîè÷íîãî ëîãàðèôìà ýêñïîíåíòû
PI çíà÷åíèå ïîñòîÿííîé p
SQRT1_2 çíà÷åíèå êâàäðàòíîãî êîðíÿ èç 1/2
SORT çíà÷åíèå êâàäðàòíîãî êîðíÿ èç 2

Ìåòîäû Math

abs(÷èñëî) — âîçâðàùàåò ìîäóëü (àáñîëþòíîå çíà÷åíèå) ÷èñëà acos(÷èñëî) — âîçâðàùàåò àðêêîñèíóñ ÷èñëà asin(÷èñëî) — âîçâðàùàåò àðêñèíóñ ÷èñëà atan(÷èñëî) — âîçâðàùàåò àðêòàíãåíñ ÷èñëà atan2(x, ó) — âîçâðàùàåò óãîë â ïîëÿðíûõ êîîðäèíàòàõ òî÷êè ñåil(÷èñëî) — îêðóãëÿåò ÷èñëî ââåðõ äî áëèæàéøåãî öåëîãî ñîs(÷èñëî) — âîçâðàùàåò êîñèíóñ ÷èñëà åxp(÷èñëî) — âîçâðàùàåò ÷èñëî å â ñòåïåíè ÷èñëî floor(÷èñëî) — îêðóãëÿåò ÷èñëî âíèç äî áëèæàéøåãî öåëîãî log(÷èñëî) — âîçâðàùàåò íàòóðàëüíûé ëîãàðèôì ÷èñëà max(÷èñëî1,÷èñëî2) — âîçâðàùàåò áîëüøåå èç ÷èñåë ÷èñëî1, ÷èñëî2 min(÷èñëî1,÷èñëî2) — âîçâðàùàåò ìåíüøåå èç ÷èñåë ÷èñëî1, ÷èñëî2 pow(÷èñëî1,÷èñëî2) — âîçâðàùàåò ÷èñëî1 â ñòåïåíè ÷èñëî2 random() — âîçâðàùàåò ñëó÷àéíîå ÷èñëî ìåæäó 0 è 1 round(÷èñëî) — îêðóãëÿåò ÷èñëî äî áëèæàéøåãî öåëîãî sin(÷èñëî) — âîçâðàùàåò ñèíóñ ÷èñëà sqrt(÷èñëî) — âîçâðàùàåò êâàäðàòíûé êîðåíü èç ÷èñëà tan(÷èñëî) — âîçâðàùàåò òàíãåíñ ÷èñëà
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

Îáúåêò Number (×èñëî)

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:23 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà 8.3. Îáúåêò Number (×èñëî)
Ïðè ðàçðàáîòêå Web-ñòðàíèö ìàòåìàòè÷åñêèå îïåðàöèè èñïîëüçóþòñÿ íå ñòîëü ÷àñòî, â îòëè÷èè îò ñòðîêîâûõ. Îáû÷íî îíè ñâÿçàíû ñ èçìåíåíèåì êîîðäèíàò ýëåìåíòîâ ñòðàíèöû (ñâîéñòâà top, left, width, height êàñêàäíîé òàáëèöû ñòèëåé). Îäíàêî âñòðå÷àþòñÿ è áîëåå ñëîæíûå ñëó÷àè. Íàïðèìåð, ìîæåò ïîòðåáîâàòüñÿ âû÷èñëèòü ñòàòèñòè÷åñêèå õàðàêòåðèñòèêè äàííûõ, ñîäåðæàùèõñÿ â íåêîòîðîé òàáëèöå. Òàê èëè èíà÷å, â ýòèõ çàäà÷àõ íåîáõîäèìî èìåòü äåëî ñ ÷èñëàìè. Î ÷èñëàõ ìû óæå ãîâîðèëè â ðàçäåëå, ïîñâÿùåííîì òèïàì äàííûõ. Òåïåðü ðàññìîòðèì èõ áîëåå ïîäðîáíî.

×èñëà â JavaScript

 JavaScript ÷èñëà ìîãóò áûòü òîëüêî äâóõ òèïîâ: öåëûå è ñ ïëàâàþùåé òî÷êîé. Öåëûå ÷èñëà íå èìåþò äðîáíîé ÷àñòè è íå ñîäåðæàò ðàçäåëèòåëüíîé òî÷êè. ×èñëà ñ ïëàâàþùåé òî÷êîé èìåþò öåëóþ è äðîáíóþ ÷àñòè, ðàçäåëåííûå òî÷êîé. Îïåðàöèè ñ öåëûìè ÷èñëàìè ïðîöåññîð êîìïüþòåðà âûïîëíÿåò çíà÷èòåëüíî áûñòðåå, ÷åì îïåðàöèè ñ ÷èñëàìè, èìåþùèìè òî÷êó. Ýòî îáñòîÿòåëüñòâî èìååò ñìûñë ó÷èòûâàòü, êîãäà ðàñ÷åòîâ ìíîãî. Íàïðèìåð, èíäåêñû, äëèíû ñòðîê ÿâëÿþòñÿ öåëî÷èñëåííûìè. Ìíîãèå ÷èñëà, ïîëó÷åííûå ñ ïîìîùüþ îïåðàòîðà äåëåíèÿ, äåíåæíûå ñóììû è ò. ï. ÿâëÿþòñÿ ÷èñëàìè ñ ïëàâàþùåé òî÷êîé.  JavaScript ìîæíî ïðîèçâîäèòü îïåðàöèè ñ ÷èñëàìè ðàçëè÷íûõ òèïîâ. Ýòî î÷åíü óäîáíî. Îäíàêî ïðè ýòîì ñëåäóåò çíàòü, êàêîãî ÷èñëîâîãî òèïà áóäåò ðåçóëüòàò. Åñëè ðåçóëüòàò îïåðàöèè ÿâëÿåòñÿ ÷èñëîì ñ äðîáíîé ÷àñòüþ, òî îí ïðåäñòàâëÿåòñÿ êàê ÷èñëî ñ ïëàâàþùåé òî÷êîé. Åñëè ðåçóëüòàò îêàçàëñÿ áåç äðîáíîé ÷àñòè, òî îí ïðèâîäèòñÿ ê öåëî÷èñëåííîìó òèïó, à íå ïðåäñòàâëÿåòñÿ ÷èñëîì, ó êîòîðîãî â äðîáíîé ÷àñòè îäíè íóëè. Âîò íåñêîëüêî ïðèìåðîâ:

2 + 3 // 7 — öåëîå ÷èñëî
2 + 3.6 // 5.6 — ÷èñëî ñ ïëàâàþùåé òî÷êîé
2.4 + 3.6 // 6 — öåëîå ÷èñëî
6.00 // ÷èñëî ñ ïëàâàþùåé òî÷êîé

×èñëà ìîæíî ïðåäñòàâëÿòü è â òàê íàçûâàåìîé ýêñïîíåíöèàëüíîé ôîðìå, òî åñòü â ôîðìàòå:
÷èñëî1e÷èñëî2 èëè ÷èñëî1E÷èñëî2. Òàêàÿ çàïèñü ÷èñëà îçíà÷àåò ÷èñëî110÷èñëî2 . Íàïðèìåð:

1e5 // 100 000
2e6 // 2 000 000
1.5e3 // 1500
+1.5e3 // 1500
-1.5e3 // -1500
3e-4 // 0.0003

×èñëà â JavaScript ìîæíî ïðåäñòàâëÿòü â ðàçëè÷íûõ ñèñòåìàõ ñ÷èñëåíèÿ, òî åñòü â ñèñòåìàõ ñ ðàçëè÷íûìè îñíîâàíèÿìè: 10 (äåñÿòè÷íîé), 16(øåñòíàäöàòåðè÷íîé) è 8 (âîñüìåðè÷íîé). Ê äåñÿòè÷íîé ôîðìå ïðåäñòàâëåíèÿ ÷èñåë ìû ïðèâûêëè, îäíàêî ñëåäóåò ïîìíèòü, ÷òî ÷èñëà â ýòîé ôîðìå íå äîëæíû íà÷èíàòüñÿ ñ 0, ïîòîìó ÷òî òàê çàïèñûâàþòñÿ ÷èñëà â 8-é ñèñòåìå. Çàïèñü ÷èñëà â 16-é ôîðìå íà÷èíàåòñÿ ñ ïðåôèêñà 0x (èëè 0X), ãäå ïåðâûé ñèìâîë íîëü, à íå áóêâà Î, çàòåì ñëåäóþò ñèìâîëû øåñòíàäöàòåðè÷íûõ öèôð: 0, 1, 2,…,9,a,b,c,d,e,f (áóêâû ìîãóò áûòü â ëþáîì ðåãèñòðå). Íàïðèìåð, øåñòíàäöàòåðè÷íîå ÷èñëî 0x4af â äåñÿòè÷íîì ïðåäñòàâëåíèè åñòü 1199). Çàïèñü ÷èñëà â 8-é ôîðìå íà÷èíàåòñÿ ñ íóëÿ, çà êîòîðûì ñëåäóþò öèôðû îò 0 äî 7. Íàïðèìåð, 027 (â äåñÿòè÷íîì ïðåäñòàâëåíèè — 23).
 àðèôìåòè÷åñêèõ âûðàæåíèÿõ ÷èñëà ìîãóò áûòü ïðåäñòàâëåíû â ëþáîé èç ïåðå÷èñëåííûõ âûøå ñèñòåì ñ÷èñëåíèÿ, îäíàêî ðåçóëüòàò âñåãäà ïðèâîäèòñÿ ê äåñÿòè÷íîé ôîðìå.

Ñîçäàíèå îáúåêòà Number

×èñëà ìîæíî ñîçäàâàòü îáû÷íûì îáðàçîì ñ ïîìîùüþ ïåðåìåííûõ è îïåðàòîðà ïðèñâàèâàíèÿ, íå ïðèáåãàÿ ê îáúåêòó Number. Îäíàêî ýòîò îáúåêò îáëàäàåò íåêîòîðûìè ïîëåçíûìè ñâîéñòâàìè è ìåòîäàìè, êîòîðûå èíîãäà ìîãóò ïðèãîäèòüñÿ.
Îáúåêò Number ñîçäàåòñÿ ñ ïîìîùüþ âûðàæåíèÿ âèäà:
ïåðåìåííàÿ = new Number(÷èñëî)
Äîñòóï ê ñâîéñòâàì è ìåòîäàì ñòðîêîâîãî îáúåêòà îáåñïå÷èâàåòñÿ òàêèìè âûðàæåíèÿìè:
÷èñëî.ñâîéñòâî
Number.ñâîéñòâî

÷èñëî.ìåòîä([ïàðàìåòðû])
Number.ìåòîä([ïàðàìåòðû])

Ñâîéñòâà Number


MAX_VALUE — êîíñòàíòà, çíà÷åíèå êîòîðîé ðàâíî íàèáîëüøåìó äîïóñòèìîìó â JavaScript çíà÷åíèþ ÷èñëà (1.7976931348623157e+308).
MIN_VALUE — êîíñòàíòà, çíà÷åíèå êîòîðîé ðàâíî íàèìåíüøåìó äîïóñòèìîìó â JavaScript çíà÷åíèþ ÷èñëà (5e-324).
NEGATIVE_INFINITY — ÷èñëî, ìåíüøåå, ÷åì Number.MIN_VALUE
POSITIVE_INFINITY — ÷èñëî, áîëüøåå, ÷åì Number.MAX_VALUE
NaN — êîíñòàíòà, èìåþùàÿ çíà÷åíèå NaN, ïîñðåäñòâîì êîòîðîé JavaScript ñîîáùàåò, ÷òî äàííûå (ïàðàìåòð, âîçâðàùàåìîå çíà÷åíèå) íå ÿâëÿåòñÿ ÷èñëîì (Not a Number).
prototype — ñâîéñòâî (ïðîòîòèï), èãðàþùåå òàêóþ æå ðîëü, ÷òî è â ñëó÷àå îáúåêòà String (ñì. âûøå).

Ìåòîäû Number

Îáúåêò Number èìååò íåñêîëüêî ìåòîäîâ, èç êîòîðûõ ìû ðàññìîòðèì òîëüêî ÷åòûðå, ïðåäíàçíà÷åííûå äëÿ ïðåäñòàâëåíèÿ ÷èñåë â âèäå ñòðîêè â òîì èëè èíîì ôîðìàòå.

toExponential(êîëè÷åñòâî) — ïðåäñòàâëÿåò ÷èñëî â ýêñïîíåíöèàëüíîé ôîðìå.
Ñèíòàêñèñ: ÷èñëî. toExponential(êîëè÷åñòâî)
Âîçâðàùàåò ñòðîêó. Ñîâìåñòèìîñòü: IE5.5+, NN6+.
Ïàðàìåòð ïðåäñòàâëÿåò ñîáîé öåëîå ÷èñëî, îïðåäåëÿþùåå, ñêîëüêî öèôð ïîñëå òî÷êè ñëåäóåò óêàçûâàòü.

toFixed(êîëè÷åñòâî) — ïðåäñòàâëÿåò ÷èñëî â ôîðìå ñ ôèêñèðîâàííûì êîëè÷åñòâîì öèôð ïîñëå òî÷êè.
Ñèíòàêñèñ: ÷èñëî. toFixed(êîëè÷åñòâî)
Âîçâðàùàåò ñòðîêó. Ñîâìåñòèìîñòü: IE5.5+, NN6+.
Ïàðàìåòð ïðåäñòàâëÿåò ñîáîé öåëîå ÷èñëî, îïðåäåëÿþùåå, ñêîëüêî öèôð ïîñëå òî÷êè ñëåäóåò óêàçûâàòü.

toPrecision(òî÷íîñòü) — ïðåäñòàâëÿåò ÷èñëî ñ çàäàííûì îáùèì êîëè÷åñòâîì çíà÷àùèõ öèôð.
Ñèíòàêñèñ: ÷èñëî. toPrecision (òî÷íîñòü)
Âîçâðàùàåò ñòðîêó. Ñîâìåñòèìîñòü: IE5.5+, NN6+.
Ïàðàìåòð ïðåäñòàâëÿåò ñîáîé öåëîå ÷èñëî, îïðåäåëÿþùåå, ñêîëüêî âñåãî öèôð, äî è ïîñëå òî÷êè, ñëåäóåò óêàçûâàòü.

toString([îñíîâàíèå]) — âîçâðàùàåò ñòðîêîâîå ïðåäñòàâëåíèå ÷èñëà â ñèñòåìå ñ÷èñëåíèÿ ñ óêàçàííûì îñíîâàíèåì.
Ñèíòàêñèñ: ÷èñëî. toString([îñíîâàíèå])
Âîçâðàùàåò ñòðîêó. Åñëè ïàðàìåòð íå óêàçàí, èìååòñÿ â âèäó äåñÿòè÷íàÿ ñèñòåìà ñ÷èñëåíèÿ.
Âû ìîæåòå óêàçàòü 2 äëÿ äâîè÷íîé ñèñòåìû, èëè 16 — äëÿ øåñòíàäöàòåðè÷íîé. Çàìåòèì, ÷òî ýòîò ìåòîä èìåþò âñå îáúåêòû.
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

JavaScript Array (ìàññèâ) Ìåòîäû Array

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:22 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà Ìåòîäû Array

Ìåòîäû îáúåêòà Array ïðåäíàçíà÷åíû äëÿ óïðàâëåíèÿ äàííûìè, ñîõðàíåííûìè â ñòðóêòóðå ìàññèâà.

ñoncat(ìàññèâ) — êîíêàòåíàöèÿ ìàññèâîâ, îáúåäèíÿåò äâà ìàññèâà â òðåòèé ìàññèâ.
Ñèíòàêñèñ: èìÿ_ìàññèâà1.concat(ìàññèâ2)
Âîçâðàùàåò ìàññèâ. Äàííûé ìåòîä íå èçìåíÿåò èñõîäíûå ìàññèâû.

join(ðàçäåëèòåëü) — ñîçäàåò ñòðîêó èç ýëåìåíòîâ ìàññèâà ñ óêàçàííûì ðàçäåëèòåëåì ìåæäó íèìè; ÿâëÿåòñÿ ñòðîêîé ñèìâîëîâ (âîçìîæíî, ïóñòîé)
Ñèíòàêñèñ: èìÿ_ìàññèâà.join(ñòðîêà)
Âîçâðàùàåò ñòðîêó ñèìâîëîâ.

pop() — óäàëÿåò ïîñëåäíèé ýëåìåíò ìàññèâà è âîçâðàùàåò åãî çíà÷åíèå.
Ñèíòàêñèñ: èìÿ_ìàññèâà.pop()
Âîçâðàùàåò çíà÷åíèå óäàëåííîãî ýëåìåíòà ìàññèâà. Ñîâìåñòèìîñòü: IE5.5+
Äàííûé ìåòîä èçìåíÿåò èñõîäíûé ìàññèâ.

push(çíà÷åíèå|îáúåêò) — äîáàâëÿåò ê ìàññèâó óêàçàííîå çíà÷åíèå â êà÷åñòâå ïîñëåäíåãî ýëåìåíòà è âîçâðàùàåò íîâóþ äëèíó ìàññèâà.
Ñèíòàêñèñ: èìÿ_ìàññèâà1.push(çíà÷åíèå|îáúåêò)
Âîçâðàùàåò ÷èñëî.
Ñîâìåñòèìîñòü: IE5.5+
Äàííûé ìåòîä èçìåíÿåò èñõîäíûé ìàññèâ.

shift() — óäàëÿåò ïåðâûé ýëåìåíò ìàññèâà è âîçâðàùàåò åãî çíà÷åíèå.
Ñèíòàêñèñ: èìÿ_ìàññèâà.shift()
Âîçâðàùàåò çíà÷åíèå óäàëåííîãî ýëåìåíòà ìàññèâà. Ñîâìåñòèìîñòü: IE5.5+, NN4+.
Äàííûé ìåòîä èçìåíÿåò èñõîäíûé ìàññèâ.

unshift(çíà÷åíèå|îáúåêò) — äîáàâëÿåò ê ìàññèâó óêàçàííîå çíà÷åíèå â êà÷åñòâå ïåðâîãî ýëåìåíòà.
Ñèíòàêñèñ: èìÿ_ìàññèâà.unshift(çíà÷åíèå|îáúåêò)
Âîçâðàùàåò: íè÷åãî.
Ñîâìåñòèìîñòü: IE5.5+
Äàííûé ìåòîä èçìåíÿåò èñõîäíûé ìàññèâ.

reverse() — èçìåíÿåò ïîðÿäîê ñëåäîâàíèÿ ýëåìåíòîâ ìàññèâà íà ïðîòèâîïîëîæíûé.
Ñèíòàêñèñ: èìÿ_ìàññèâà.reverse()
Âîçâðàùàåò ìàññèâ.
Äàííûé ìåòîä èçìåíÿåò èñõîäíûé ìàññèâ.

slise(èíäåêñ1 [, èíäåêñ2]) — ñîçäàåò ìàññèâ èç ýëåìåíòîâ èñõîäíîãî ìàññèâà ñ èíäåêñàìè óêàçàííîãî äèàïàçîíà.
Ñèíòàêñèñ: èìÿ_ìàññèâà. slise(èíäåêñ1 [, èíäåêñ2])
Âîçâðàùàåò ìàññèâ. Äàííûé ìåòîä íå èçìåíÿåò èñõîäíûé ìàññèâ.
Âòîðîé ïàðàìåòð (êîíå÷íûé èíäåêñ) íå ÿâëÿåòñÿ îáÿçàòåëüíûì, î ÷åì ñâèäåòåëüñòâóþò êâàäðàòíûå ñêîáêè â îïèñàíèè ñèíòàêñèñà. Åñëè îí íå óêàçàí, òî ñîçäàâàåìûé ìàññèâ ñîäåðæèò ýëåìåíòû èñõîäíîãî ìàññèâà, íà÷èíàÿ ñ èíäåêñà èíäåêñ1 è äî êîíöà.  ïðîòèâíîì ñëó÷àå ñîçäàâàåìûé ìàññèâ ñîäåðæèò ýëåìåíòû èñõîäíîãî ìàññèâà, íà÷èíàÿ ñ èíäåêñà èíäåêñ1 è äî èíäåêñà èíäåêñ2, çà èñêëþ÷åíèåì ïîñëåäíåãî. Ïðè ýòîì èñõîäíûé ìàññèâ îñòàåòñÿ áåç èçìåíåíèé.

sort([ôóíêöèÿ_ñîðòèðîâêè]) — ñîðòèðóåò (óïîðÿäî÷èâàåò) ýëåìåíòû ìàññèâà ñ ïîìîùüþ ôóíêöèè ñðàâíåíèÿ.
Ñèíòàêñèñ: èìÿ_ìàññèâà. sort([ôóíêöèÿ_ñðàâíåíèÿ])
Âîçâðàùàåò ìàññèâ. Äàííûé ìåòîä èçìåíÿåò èñõîäíûé ìàññèâ.
Ïàðàìåòð íå îáÿçàòåëåí, î ÷åì ñâèäåòåëüñòâóþò êâàäðàòíûå ñêîáêè.
Åñëè ïàðàìåòð íå óêàçàí, òî ñîðòèðîâêà ïðîèçâîäèòñÿ íà îñíîâå ñðàâíåíèÿ ASCII-êîäîâ ñèìâîëîâ çíà÷åíèé. Ýòî óäîáíî äëÿ ñðàâíåíèÿ ñèìâîëüíûõ ñòðîê, íî íå ñîâñåì ïîäõîäèò äëÿ ñðàâíåíèÿ ÷èñåë. Òàê, ÷èñëî 357 ïðè ñîðòèðîâêå ñ÷èòàåòñÿ ìåíüøèì, ÷åì 85, ïîñêîëüêó ñíà÷àëà ñðàâíèâàþòñÿ ïåðâûå ñèìâîëû è òîëüêî â ñëó÷àå èõ ðàâåíñòâà ñðàâíèâàþòñÿ ñëåäóþùèå, è ò. ä. Òàêèì îáðàçîì, ìåòîä sort() áåç ïàðàìåòðà ïîäõîäèò äëÿ ïðîñòîé ñîðòèðîâêè ìàññèâà ñî ñòðîêîâûìè ýëåìåíòàìè. Ìîæíî ñîçäàòü ñâîþ ñîáñòâåííóþ ôóíêöèþ äëÿ ñðàâíåíèÿ ýëåìåíòîâ ìàññèâà, ñ ïîìîùüþ êîòîðîé ìåòîä sort() îòñîðòèðóåò âåñü ìàññèâ. Èìÿ ýòîé ôóíêöèè (áåç êàâû÷åê è êðóãëûõ ñêîáîê) ïåðåäàåòñÿ ìåòîäó â êà÷åñòâå ïàðàìåòðà. Ïðè ðàáîòå ìåòîäà ôóíêöèè ïåðåäàþòñÿ äâà ýëåìåíòà ìàññèâà, à åå êîä âîçâðàùàåò ìåòîäó çíà÷åíèå, óêàçûâàþùåå, êîêîé èç ýëåìåíòîâ äîëæåí ñëåäîâàòü çà äðóãèì. Äîïóñòèì, ñðàâíèâàþòñÿ äâà ýëåìåíòà, x è y. Òîãäà â çàâèñèìîñòè îò ÷èñëîâîãî çíà÷åíèÿ (îòðèöàòåëüíîãî, 0 èëè ïîëîæèòåëüíîãî), âîçâðàùàåìîãî ôóíêöèåé ñðàâíåíèÿ, ìåòîäîì sort ïðèíèìàåòñÿ îäíî èç òðåõ âîçìîæíûõ ðåøåíèé:


Çíà÷åíèå, âîçâðàùàåìîå ôóíêöèåé ñðàâíåíèÿ Ðåçóëüòàò ñðàâíåíèÿ x è y
<0 y ñëåäóåò çà x
0 Ïîðÿäîê ñëåäîâàíèÿ x è y íå èçìåíÿåòñÿ
>0 x ñëåäóåò çà y

Èòàê, ïî êàêîìó êðèòåðèþ ñîðòèðîâàòü ýëåìåíòû ìàññèâà, îïðåäåëÿåòñÿ êîäîì ôóíêöèè ñðàâíåíèÿ. Åñëè ýëåìåíò ìàññèâà èìååò çíà÷åíèå null, òî â Internet Explorer îí ðàçìåùàåòñÿ â íà÷àëå ìàññèâà.

splice(èíäåêñ, êîëè÷åñòâî [, ýëåì1 [, ýëåì2 [, …ýëåìN]]]) — óäàëÿåò èç ìàññèâà íåñêîëüêî ýëåìåíòîâ è âîçâðàùàåò ìàññèâ èç óäàëåííûõ ýëåìåíòîâ, èëè çàìåíÿåò çíà÷åíèÿ ýëåìåíòîâ.
Ñèíòàêñèñ: èìÿ_ìàññèâà splice(èíäåêñ, êîëè÷åñòâî [, ýëåì1 [, ýëåì2 [, …ýëåìN]]])
Âîçâðàùàåò ìàññèâ. Ñîâìåñòèìîñòü: IE5.5+. Äàííûé ìåòîä èçìåíÿåò èñõîäíûé ìàññèâ.
Ïåðâûå äâà ïàðàìåòðà îáÿçàòåëüíû, à ñëåäóþùèå — íåò. Ïåðâûé ïàðàìåòð ÿâëÿåòñÿ èíäåêñîì ïåðâîãî óäàëÿåìîãî ýëåìåíòà, à âòîðîé — êîëè÷åñòâîì óäàëÿåìûõ ýëåìåíòîâ.
Ìåòîä splice() ïîçâîëÿåò òàêæå çàìåíèòü çíà÷åíèÿ ýëåìåíòîâ èñõîäíîãî ìàññèâà, åñëè óêàçàíû òðåòèé è, âîçìîæíî, ïîñëåäóþùèå ïàðàìåòðû. Ýòè ïàðàìåòðû ïðåäñòàâëÿþò çíà÷åíèÿ, êîòîðûìè ñëåäóåò çàìåíèòü èñõîäíûå çíà÷åíèÿ ýëåìåíòîâ ìàññèâà. Ïðè òàêîì èñïîëüçîâàíèè ìåòîäà splice() âàæåí ïåðâûé ïàðàìåòð (èíäåêñ), à âòîðîé (êîëè÷åñòâî) ìîæåò áûòü ðàâíûì íóëþ.  ëþáîì ñëó÷àå, åñëè êîëè÷åñòâî ýëåìåíòîâ çàìåíû áîëüøå çíà÷åíèÿ âòîðîãî ïàðàìåòðà, òî ÷àñòü ýëåìåíòîâ èñõîäíîãî ìàññèâà áóäåò çàìåíåíà, à ÷àñòü ýëåìåíòîâ áóäåò ïðîñòî âñòàâëåíà â íåãî. Ïðè ýòîì ìåòîä splice() âîçâðàùàåò äðóãîé ìàññèâ, ñîñòîÿùèé èç ýëåìåíòîâ èñõîäíîãî, èíäåêñû êîòîðûõ ñîîòâåòñòâóþò ïåðâîìó è âòîðîìó ïàðàìåòðàì. Íî ýòî ñïðàâåäëèâî, åñëè âòîðîé ïàðàìåòð íå ðàâåí 0.

toLocaleString(), toString() — ïðåîáðàçóþò ñîäåðæèìîå ìàññèâà â ñèìâîëüíóþ ñòðîêó.
Ìåòîä toLocaleString() ïîääåðæèâàåòñÿ áðàóçåðàìè IE5.5+ è NN3+, à ìåòîä toString() — è áîëåå ðàííèìè âåðñèÿìè. Àëãîðèòì ïðåîáðàçîâàíèÿ ïî ìåòîäó toLocaleString() çàâèñèò îò âåðñèè áðàóçåðà.
Äëÿ ïðåîáðàçîâàíèÿ ñîäåðæèìîãî ìàññèâà â ñòðîêó ðåêîìåíäóþ èñïîëüçîâàòü ìåòîä join().
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

JavaScript Array (ìàññèâ)

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:21 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà 8.2. Îáúåêò Array (Ìàññèâ)
Ìàññèâ ïðåäñòàâëÿåò ñîáîé óïîðÿäî÷åííûé íàáîð äàííûõ. Åãî óäîáíî ïðåäñòàâèòü ñåáå â âèäå îäíîñòîëáöîâîé òàáëèöû, ñîäåðæàùåé íåêîòîðîå êîëè÷åñòâî ñòðîê.  ÿ÷åéêàõ òàêîé òàáëèöû ìîãóò íàõîäèòüñÿ äàííûå ëþáîãî òèïà, â òîì ÷èñëå è ìàññèâû.  ïîñëåäíåì ñëó÷àå ìîæíî ãîâîðèòü î ìíîãîìåðíûõ ìàññèâàõ (òî åñòü î ìàññèâàõ ìàññèâîâ). Êîëè÷åñòâî ýëåìåíòîâ â ìàññèâå (ñòðîê â òàáëèöå) íàçûâàåòñÿ äëèíîé ìàññèâà. Ê ýëåìåíòàì ìàññèâà ìîæíî îáðàùàòüñÿ â ïðîãðàììå ïî èõ ïîðÿäêîâîìó íîìåðó (èíäåêñó). Íóìåðàöèÿ ýëåìåíòîâ ìàññèâà íà÷èíàåòñÿ ñ íóëÿ, òàê ÷òî ïåðâûé ýëåìåíò èìååò èíäåêñ 0, à ïîñëåäíèé — íà åäèíèöó ìåíüøèé, ÷åì äëèíà ìàññèâà.
Ìàññèâû ïðèìåíÿþòñÿ âî ìíîãèõ áîëåå èëè ìåíåå ñëîæíûõ ïðîãðàììàõ îáðàáîòêè äàííûõ, à â íåêîòîðûõ ñëó÷àÿõ áåç íèõ ïðîñòî íå îáîéòèñü. Åñëè ñðåäè èñïîëüçóåìûõ äàííûõ åñòü ãðóïïû òàêèõ, êîòîðûå îáðàáàòûâàþòñÿ îäèíàêîâûì îáðàçîì, òî, âîçìîæíî, ëó÷øå îðãàíèçîâàòü èõ â âèäå ìàññèâà.

Ñîçäàíèå ìàññèâà

Ñóùåñòâóåò íåñêîëüêî ñïîñîáîâ ñîçäàíèÿ ìàññèâà.  ëþáîì ñëó÷àå ïðåæäå âñåãî ñîçäàåòñÿ íîâûé îáúåêò ìàññèâà ñ èñïîëüçîâàíèåì êëþ÷åâîãî ñëîâà new:
èìÿ_ìàññèâà = new Array([äëèíà_ìàññèâà])
Çäåñü äëèíà_ìàññèâà ÿâëÿåòñÿ íåîáÿçàòåëüíûì ÷èñëîâûì ïàðàìåòðîì, î ÷åì ãîâîðÿò êâàäðàòíûå ñêîáêè. Åñëè äëèíà ìàññèâà íå óêàçàíà, òî ñîçäàåòñÿ ïóñòîé ìàññèâ, íå ñîäåðæàùèé íè îäíîãî ýëåìåíòà.  ïðîòèâíîì ñëó÷àå ñîçäàåòñÿ ìàññèâ ñ óêàçàííûì êîëè÷åñòâîì ýëåìåíòîâ, îäíàêî âñå îíè èìåþò çíà÷åíèå null (òî åñòü íå èìåþò çíà÷åíèé). Âû ìîæåòå ñíà÷àëà ñîçäàòü ïóñòîé ìàññèâ, à çàòåì äîáàâèòü ê íåìó íóæíîå êîëè÷åñòâî ýëåìåíòîâ ñ ïîìîùüþ îïåðàòîðà ïðèñâàèâàíèÿ. Çàìåòèì, ÷òî âûðàæåíèå ñ êëþ÷åâûìè ñëîâàìè new Array ñîçäàåò ýêçåìïëÿð (êîïèþ) îáúåêòà Array. Ó îáúåêòà Array èìååòñÿ ñâîéñòâî length, çíà÷åíèåì êîòîðîãî ÿâëÿåòñÿ äëèíà ìàññèâà. ×òîáû ïîëó÷èòü çíà÷åíèå ýòîãî ñâîéñòâà, íåîáõîäèìî èñïîëüçîâàòü âûðàæåíèå èìÿ_ìàññèâà.length. Ñîçäàâ ìàññèâ, ìîæíî ïðèñâîèòü çíà÷åíèÿ åãî ýëåìåíòàì, èñïîëüçóÿ äëÿ ýòîãî îïåðàòîð ïðèñâàèâàíèÿ.  ëåâîé ÷àñòè îïåðàòîðà ïðèñâàèâàíèÿ óêàçûâàåòñÿ èìÿ ìàññèâà, à ðÿäîì ñ íèì â êâàäðàòíûõ ñêîáêàõ èíäåêñ ýëåìåíòà. Ìû óæå ãîâîðèëè, ÷òî ê ýëåìåíòàì ìàññèâà îáðàùàþòñÿ ïî èíäåêñó: èìÿ_ìàññèâà[èíäåêñ]. Çäåñü êâàäðàòíûå ñêîáêè îáÿçàòåëüíû.

Ðàññìîòðèì ñîçäàíèå ìàññèâà earth, ñîäåðæàùåãî â êà÷åñòâå ýëåìåíòîâ íåêîòîðûå õàðàêòåðèñòèêè íàøåé ïëàíåòû. Îáðàòèòå âíèìàíèå, ÷òî ýëåìåíòû â ýòîì ìàññèâå ðàçëè÷íûõ òèïîâ (ñòðîêîâûå è ÷èñëîâûå).

earth = new Array(4) // ìàññèâ èç 4-õ ýëåìåíòîâ
earth[0] = "Ïëàíåòà"
earth[1] = "24 ÷àñà"
earth[2] = 6378
earth[3] = 365.25

earth.length // çíà÷åíèå ðàâíî 4

Åñëè íàì ïîòðåáóåòñÿ çíà÷åíèå, íàïðèìåð, òðåòüåãî ýëåìåíòà ìàññèâà, òî äîñòàòî÷íî èñïîëüçîâàòü âûðàæåíèå earth[2].

Äðóãîé ñïîñîá ñîçäàíèÿ ìàññèâà çàêëþ÷àåòñÿ â íåïîñðåäñòâåííîì îïðåäåëåíèè ýëåìåíòîâ â êðóãëûõ ñêîáêàõ çà êëþ÷åâûì ñëîâîì Array. Íàïðèìåð,
earth = new Array("Ïëàíåòà", "24 ÷àñà", 6378, 365.25)

JavaScript àâòîìàòè÷åñêè ñîçäàåò èíäåêñû äëÿ ýëåìåíòîâ ìàññèâà, òàê ÷òî ê ýëåìåíòàì ìàññèâà, ñîçäàííîãî òàêèì ñïîñîáîì, òàêæå ìîæíî îáðàùàòüñÿ ïî èíäåêñàì.

Òðåòèé ñïîñîá ñîçäàíèÿ ìàññèâà — ïðèñâîèòü èìÿ êàæäîìó ýëåìåíòó, ïîäîáíî èìåíè ñâîéñòâà îáúåêòà. Íàïðèìåð,

earth = new Array() // ïóñòîé ìàññèâ
earth.xtype = "Ïëàíåòà"
earth.xday = "24 ÷àñà"
earth.radius = 6378
earth.period = 365.25

 ýòîì ñëó÷àå îáðàùåíèå ê ýëåìåíòó ïðîèñõîäèò êàê ê ñâîéñòâó îáúåêòà, íàïðèìåð, earth.radius. Âîçìîæåí è òàêîé âàðèàíò: earth["radius"]. Îäíàêî ïî èíäåêñó ê ýëåìåíòàì â òàêîì ìàññèâå îáðàùàòüñÿ íåëüçÿ.

Ìíîãîìåðíûå ìàññèâû

Ìàññèâû, ðàññìîòðåííûå âûøå, ÿâëÿþòñÿ îäíîìåðíûìè. Èõ ìîæíî ïðåäñòàâèòü ñåáå â âèäå òàáëèöû èç îäíîãî ñòîëáöà. Îäíàêî ýëåìåíòû ìàññèâà ìîãóò ñîäåðæàòü äàííûå ðàçëè÷íûõ òèïîâ, â òîì ÷èñëå è îáúåêòû, à çíà÷èò è ìàññèâû. Åñëè â êà÷åñòâå ýëåìåíòîâ íåêîòîðîãî îäíîìåðíîãî ìàññèâà ñîçäàòü ìàññèâû, òî ïîëó÷èòñÿ äâóìåðíûé ìàññèâ. Îáðàùåíèå ê ýëåìåíòàì òàêîãî ìàññèâà ïðîèñõîäèò â ñîîòâåòñòâèè ñî ñëåäóþùèì ñèíòàêñèñîì:
èìÿ_ìàññèâà[èíäåêñ_óðîâíÿ1] [èíäåêñ_óðîâíÿ2]

Åñëè ìàññèâ èìååò ðàçìåðíîñòü áîëüøóþ äâóõ, òî ñèíòàêñèñ îáðàùåíèÿ ê ìàññèâàì èìååò àíàëîãè÷íûé ñèíòàêñèñ: ñëåäóåò äîáàâèòü íóæíîå êîëè÷åñòâî êâàäðàòíûõ ñêîáîê, çàêëþ÷àþùèõ íóæíûå èíäåêñû.

Òèïè÷íûì ïðèìåðîì äâóìåðíîãî ìàññèâà ÿâëÿåòñÿ ìàññèâ îïöèé ìåíþ. Ó òàêîãî ìåíþ åñòü ãîðèçîíòàëüíàÿ ïàíåëü ñ îïöèÿìè, íàçûâàåìàÿ ãëàâíûì ìåíþ. Íåêîòîðûì îïöèÿì ãëàâíîãî ìåíþ ñîîòâåòñòâóþò ðàñêðûâàþùèåñÿ âåðòèêàëüíûå ïîäìåíþ ñî ñâîèìè îïöèÿìè. Ìû ñîçäàåì ìàññèâ, äëèíà êîòîðîãî ðàâíà êîëè÷åñòâó îïöèé ãëàâíîãî ìåíþ. Ýëåìåíòû ýòîãî ìàññèâà îïðåäåëÿåì êàê ìàññèâû íàçâàíèé îïöèé ñîîòâåòñòâóþùèõ ïîäìåíþ. ×òîáû áûëà ÿñíà ñòðóêòóðà íàøåé êîíñòðóêöèè, ìû âûáðàëè íàçâàíèÿ îïöèé íàäëåæàùèì îáðàçîì. Íàïðèìåð, "Ìåíþ 2.1" — íàçâàíèå 1-é îïöèè ïîäìåíþ, ñîîòâåòñòâóþùåãî 2-é îïöèè ãëàâíîãî ìåíþ.

menu = new Array()
menu[0] = new array("Ìåíþ 1.1", "Ìåíþ 1.2", ", "Ìåíþ 1.3")
menu[1] = new array("Ìåíþ 2.1", "Ìåíþ 2.2")
menu[2] = new array("Ìåíþ 3.1", "Ìåíþ 3.2" , "Ìåíþ 3.3", "Ìåíþ 3.4")

×òîáû îáðàòèòüñÿ êî 2-é îïöèè 3-ãî ïîäìåíþ, ñëåäóåò íàïèñàòü:
menu[2][1] // çíà÷åíèå ðàâíî "Ìåíþ 3.2"

Óñëîæíèì íàøó êîíñòðóêöèþ, ÷òîáû îíà ñîäåðæàëà íå òîëüêî íàçâàíèÿ îïöèé ïîäìåíþ, íî è íàçâàíèÿ îïöèé ãëàâíîãî ìåíþ.

menu = new Array()
/* Ìàññèâ îïöèé ãëàâíîãî ìåíþ: */
menu[0] = new Array("Ìåíþ1", "Ìåíþ2", "Ìåíþ3")
menu[1] = new Array()
menu[1][0] = new Array("Ìåíþ 1.1", "Ìåíþ 1.2", "Ìåíþ 1.3")
menu[1][1] = new Array("Ìåíþ 2.1", "Ìåíþ 2.2")
menu[1][2] = new Array("Ìåíþ 3.1", "Ìåíþ 3.2" , "Ìåíþ3.3", "Ìåíþ 3.4")

menu[0][1] // çíà÷åíèå ðàâíî "Ìåíþ 2"
menu[0][2] // çíà÷åíèå ðàâíî "Ìåíþ 3"
menu[1][1][0] // çíà÷åíèå ðàâíî "Ìåíþ 2.1"
menu[1][2][3] // çíà÷åíèå ðàâíî "Ìåíþ 3.2"

Êîïèðîâàíèå ìàññèâà

Èíîãäà òðåáóåòñÿ ñîçäàòü êîïèþ ìàññèâà, ÷òîáû ñîõðàíèòü èñõîäíûå äàííûå è ïðåäîõðàíèòü èõ îò ïîñëåäóþùèõ ìîäèôèêàöèé. Íàïðèìåð, ìåòîä ñîðòèðîâêè ýëåìåíòîâ ìàññèâà, êîòîðûé ðàññìîòðåí íèæå, èçìåíÿåò èñõîäíûé ìàññèâ. Îäíàêî äëÿ êîïèðîâàíèÿ ìàññèâà íå äîñòàòî÷íî ïðèñâîèòü åãî äðóãîé ïåðåìåííîé. Èñïîëüçóÿ íîâóþ ïåðåìåííóþ è îïåðàòîð ïðèñâàèâàíèÿ, ìû ñîçäàåì ëèøü íîâóþ ññûëêó íà ïðåæíèé ìàññèâ, à íå íîâûé ìàññèâ.

Ïðèìåð:

a = new Array(5, 2, 4, 3)
x = a // ññûëêà íà ìàññèâ a
a[2] = 25 // èçìåíåíèå çíà÷åíèå ýëåìåíòà ñ èíäåêñîì 2
x[2] // çíà÷åíèå ðàâíî 25, òî åñòü íîâîìó çíà÷åíèþ a[2]

 ýòîì ïðèìåðå ìàññèâû a è x ñîâïàäàþò.
×òîáû ñêîïèðîâàòü ìàññèâ, òî åñòü ñîçäàòü íîâûé ìàññèâ, ýëåìåíòû êîòîðîãî ðàâíû ñîîòâåòñòâóþùèì ýëåìåíòàì èñõîäíîãî, ñëåäóåò âîñïîëüçîâàòüñÿ îïåðàòîðîì öèêëà, â êîòîðîì ýëåìåíòàì íîâîãî ìàññèâà ïðèñâàèâàþòñÿ çíà÷åíèÿ ýëåìåíòîâ èñõîäíîãî, íàïðèìåð:

a = new Array(5, 2, 4, 3)
x = new Array() // ññûëêà íà ìàññèâ a
for(i=0; i< a.length; i++) // êîïèðîâàíèå çíà÷åíèé ìàññèâà a â ýëåìåíòû ìàññèâà x
{x[i] = a [i]}

Ñâîéñòâà Array

length — äëèíà èëè, èíûìè ñëîâàìè, êîëè÷åñòâî ýëåìåíòîâ â ìàññèâå; öåëîå ÷èñëî.
Ñèíòàêñèñ: èìÿ_ìàññèâà.length
Ïîñêîëüêó èíäåêñàöèÿ ýëåìåíòîâ ìàññèâà íà÷èíàåòñÿ ñ íóëÿ, èíäåêñ ïîñëåäíåãî ýëåìåíòà íà åäèíèöó ìåíüøå äëèíû ìàññèâà. Ýòî îáñòîÿòåëüñòâî óäîáíî èñïîëüçîâàòü ïðè äîáàâëåíèè ê ìàññèâó íîâîãî ýëåìåíòà: myarray[mayarray.length] = çíà÷åíèå.

prototype — ñâîéñòâî (ïðîòîòèï), ïîçâîëÿþùåå äîáàâèòü íîâûå ñâîéñòâà è ìåòîäû êî âñåì ñîçäàííûì ìàññèâàì. Íàïðèìåð, ñëåäóþùåå âûðàæåíèå äîáàâëÿåò ñâîéñòâî author êî âñåì óæå ñîçäàííûì ìàññèâàì:
Array.prototype.author = "Èâàíîâ"
Åñëè òåïåðü âìåñòî Array.prototype íàïèñàòü èìÿ ñóùåñòâóþùåãî ìàññèâà, òî ìîæíî èçìåíèòü çíà÷åíèå ñâîéñòâà author òîëüêî äëÿ ýòîãî ìàññèâà:
myarray = new Array() // ñîçäàíèå ìàññèâà myarray
xarray = new Array() // ñîçäàíèå ìàññèâà xarray
Array.prototype.author = "Èâàíîâ" /* äîáàâëåíèå ïðîòîòèïà êî âñåì ìàññèâàì */
myarray.author = "Èâàíîâ ìëàäøèé" /* èçìåíåíèå ñâîéñòâà author äëÿ myarray */
xarray.author = "Ñèäîðîâ" /* èçìåíåíèå ñâîéñòâà author äëÿ xarray */
Ïðîòîòèïó ìîæíî ïðèñâîèòü ôóíêöèè. Ïðè ýòîì îíè ïîïîëíÿò ìíîæåñòâî ìåòîäîâ îáúåêòà Array.
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

Ñïðàâî÷íîå ðóêîâîäñòâî ïî JavaScript 8

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:18 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà 8. Âñòðîåííûå îáúåêòû
Îáúåêòû ïðåäñòàâëÿþò ñîáîé ïðîãðàììíûå åäèíèöû, îáëàäàþùèå íåêîòîðûìè ñâîéñòâàìè. Îá îáúåêòå ìû ìîæåì ñóäèòü ïî çíà÷åíèÿì åãî ñâîéñòâ è îïèñàíèþ òîãî, êàê îí ôóíêöèîíèðóåò. Ïðîãðàììíûé êîä âñòðîåííûõ â JavaScript îáúåêòîâ íàì íå äîñòóïåí. Âñòðîåííûå îáúåêòû èìåþò ôèêñèðîâàííûå íàçâàíèÿ è ñâîéñòâà. Âñå ñâîéñòâà ýòèõ îáúåêòîâ ðàçäåëÿþò íà äâà âèäà: ïðîñòî ñâîéñòâà è ìåòîäû. Ñâîéñòâà àíàëîãè÷íû îáû÷íûì ïåðåìåííûì. Îíè èìåþò èìåíà è çíà÷åíèÿ. Íåêîòîðûå ñâîéñòâà îáúåêòîâ äîñòóïíû òîëüêî äëÿ ÷òåíèÿ. Ýòî îçíà÷àåò, ÷òî èõ çíà÷åíèÿ íåëüçÿ èçìåíÿòü. Äðóãèå ñâîéñòâà äîñòóïíû è äëÿ çàïèñè — èõ çíà÷åíèÿ ìîæíî èçìåíÿòü ñ ïîìîùüþ îïåðàòîðà ïðèñâàèâàíèÿ. Ìåòîäû àíàëîãè÷íû ôóíêöèÿì, îíè ìîãóò èìåòü èëè íå èìåòü ïàðàìåòðû. ×òîáû óçíàòü çíà÷åíèå ñâîéñòâà îáúåêòà, íåîáõîäèìî óêàçàòü èìÿ ýòîãî îáúåêòà è èìÿ ñâîéñòâà, îòäåëèâ èõ äðóã îò äðóãà òî÷êîé: èìÿ_îáúåêòà.ñâîéñòâî. Çàìåòèì, ÷òî îáúåêò ìîæåò è íå èìåòü ñâîéñòâ. Ìû ìîæåì çàñòàâèòü îáúåêò âûïîëíèòü òîò èëè èíîé ïðèñóùèé åìó ìåòîä.  ýòîì ñëó÷àå òàêæå ãîâîðÿò î ïðèìåíåíèè ìåòîäà ê îáúåêòó. Ñèíòàêñèñ ñîîòâåòñòâóþùåãî âûðàæåíèÿ òàêîé: èìÿ_îáúåêòà.ìåòîä(ïàðàìåòðû). Çàìåòèì, ÷òî îáúåêò ìîæåò íå èìåòü ìåòîäîâ. Èòàê, ïî ñèíòàêñèñó ñâîéñòâà îòëè÷àþòñÿ îò îáû÷íûõ ïåðåìåííûõ òåì, ÷òî èìåþò ñîñòàâíûå èìåíà, à òàêæå òåì, ÷òî çíà÷åíèÿ íåêîòîðûõ ñâîéñòâ íåëüçÿ èçìåíåíèòü. Ìåòîäû îòëè÷àþòñÿ ñ òî÷êè çðåíèÿ ñèíòàêñèñà îò îáû÷íûõ ôóíêöèé òîëüêî òåì, ÷òî èìåþò ñîñòàâíûå èìåíà.
 ñâåòå èçëîæåííîãî âûøå, îáúåêò ìîæíî ïîíèìàòü êàê íåêîòîðûé êîíòåéíåð, ñîäåðæàùèé ïåðåìåííûå-ñâîéñòâà è ôóíêöèè-ìåòîäû. Ðàçóìååòñÿ, â ýòîì êîíòåéíåðå åñòü åùå ÷òî-òî, íî îíî ñêðûòî îò íàñ. Ìû ìîæåì âîçäåéñòâîâàòü íà îáúåêò òîëüêî ñ ïîìîùüþ ñâîéñòâ è ìåòîäîâ. Âñòðîåííûå îáúåêòû, êàê óæå îòìå÷àëîñü, èìåþò ôèêñèðîâàííûå íàçâàíèÿ. Îáúåêòû ñ èìåíàìè, ñîâïàäàþùèìè ñ èõ ôèêñèðîâàííûìè íàçâàíèÿìè, íàçûâàþòñÿ ñòàòè÷åñêèìè. Îäíàêî âû ìîæåòå ñîçäàòü ýêçåìïëÿðû (êîïèè) ñòàòè÷åñêèõ îáúåêòîâ, ïðèñâîèâ èì ñâîè ñîáñòâåííûå èìåíà. Ýêçåìïëÿðû ñòàòè÷åñêèõ îáúåêòîâ ÿâëÿþòñÿ îáúåêòàìè â âàøåé ïðîãðàììå, êîòîðûå íàñëåäóþò îò ïåðâûõ âñå èõ ñâîéñòâà è ìåòîäû. Ýêçåìïëÿðû îáúåêòîâ ýòî íåêîòîðûå ÷àñòíûå âîïëîùåíèÿ â ïðîãðàììå ñîîòâåòñòâóþùèõ ñòàòè÷åñêèõ îáúåêòîâ. Âìåñòå ñ òåì, âû ìîæåòå èñïîëüçîâàòü è ñòàòè÷åñêèå îáúåêòû â ÷èñòîì âèäå, íå ñîçäàâàÿ íèêàêèõ èõ êîïèé. Íàïðèìåð, äëÿ ôîðìóëüíûõ âû÷èñëåíèé èñïîëüçóåòñÿ ñòàòè÷åñêèé îáúåêò Math, à â ñëó÷àå ìàññèâîâ ñîçäàþòñÿ ýêçåìïëÿðû ñòàòè÷åñêîãî îáúåêòà Array, ñîäåðæàùèå êîíêðåòíûå äàííûå, ê êîòîðûì ïðèìåíèìû âñå îáùèå ìåòîäû è ñâîéñòâà ñòàòè÷åñêîãî îáúåêòà Array. Âñòðîåííûå îáúåêòû èìåþò, ñðåäè ïðî÷èõ, ñâîéñòâî prototype (ïðîòîòèï), ñ ïîìîùüþ êîòîðîãî ìîæíî äîáàâëÿòü íîâûå ñâîéñòâà è ìåòîäû ê óæå ñóùåñòâóþùèì ýêçåìïëÿðàì îáúåêòîâ. Ýòè íîâûå ñâîéñòâà è ìåòîäû, ðàçóìååòñÿ, âû äîëæíû ïðåäâàðèòåëüíî ñàìè ïðîäóìàòü è âîïëîòèòü â âèäå ïðîãðàììíûõ êîäîâ.
8.1. Îáúåêò String (Ñòðîêà)
Îáúåêò String ïðåäñòàâëÿåò èíòåðåñ ãëàâíûì îáðàçîì áëàãîäàðÿ ìåòîäàì îáðàáîòêè ñòðîê. Îí íåçàìåíèì, êîãäà òðåáóåòñÿ, íàïðèìåð, íàéòè ïîçèöèþ âõîæäåíèÿ îäíîé ñòðîêè â äðóãóþ, âûðåçàòü èç ñòðîêè íåêîòîðóþ åå ÷àñòü, ðàçáèòü ñòðîêó íà îòäåëüíûå ýëåìåíòû è ñîçäàòü èç íèõ ìàññèâ, è ò. ä.
Ñ ïîìîùüþ îáúåêòà String ìîæíî ñîçäàòü ñòðîêó êàê ñòðîêîâûé îáúåêò. Îäíàêî â ïîäàâëÿþùåì áîëüøèíñòâå ñëó÷àåâ äëÿ ýòîãî äîñòàòî÷íî èñïîëüçîâàòü îáû÷íóþ ïåðåìåííóþ è îïåðàòîð ïðèñâàèâàíèÿ ñòðîêîâîãî çíà÷åíèÿ.  ýòîì ñëó÷àå èíòåðïðåòàòîð âñå ðàâíî ñîçäàåò ýêçåìïëÿð (êîïèþ) ñòðîêîâîãî îáúåêòà, ñâîéñòâà è ìåòîäû êîòîðîãî äîñòóïíû èç ïðîãðàììíîãî êîäà.

Ñîçäàíèå ñòðîêîâîãî îáúåêòà
Äëÿ ñîçäàíèÿ ñòðîêîâîãî îáúåêòà èñïîëüçóåòñÿ âûðàæåíèå ñëåäóþùåãî âèäà:

èìÿ_ïåðåìåííîé = new String("ñòðîêîâîå_çíà÷åíèå")

Çäåñü èìÿ_ïåðåìåííîé âûïîëíÿåò ðîëü ññûëêè íà ñòðîêîâûé îáúåêò. Íàïðèìåð, âûðàæåíèå mystring = new String("Ïðèâåò!") ñîçäàåò ñòðîêîâûé îáúåêò mystring ñî çíà÷åíèåì "Ïðèâåò!" Îäíàêî ìîæíî ñîçäàòü ñòðîêîâûé îáúåêò è ñ ïîìîùüþ îáû÷íîãî îïåðàòîðà ïðèñâàèâàíèÿ:

èìÿ_ïåðåìåííîé = "ñòðîêîâîå_çíà÷åíèå"

èëè

var èìÿ_ïåðåìåííîé = "ñòðîêîâîå_çíà÷åíèå"

Äîñòóï ê ñâîéñòâàì è ìåòîäàì ñòðîêîâîãî îáúåêòà îáåñïå÷èâàåòñÿ òàêèìè âûðàæåíèÿìè:

ñòðîêà.ñâîéñòâî
String.ñâîéñòâî

ñòðîêà.ìåòîä([ïàðàìåòðû])
String.ìåòîä([ïàðàìåòðû])

Íåêîòîðûå ìåòîäû ìîãóò è íå èìåòü ïàðàìåòðîâ, ÷òî óêàçàíî ñ ïîìîùüþ êâàäðàòíûõ ñêîáîê. Çäåñü ñòðîêà ìîæåò áûòü ññûëêîé íà ñòðîêîâûé îáúåêò, ñòðîêîâîé ïåðåìåííîé, âûðàæåíèåì, âîçâðàùàþùèì ñòðîêó, à òàêæå ïðîñòî ñòðîêîâûì çíà÷åíèåì. Êîãäà èñïîëüçóåòñÿ êëþ÷åâîå ñëîâî String â êà÷åñòâå èìåíè îáúåêòà, ýòî îçíà÷àåò, ÷òî íàñ èíòåðåñóþò ñâîéñòâà è ìåòîäû ñòàòè÷åñêîãî ñòðîêîâîãî îáúåêòà, òî åñòü îáùèå ñâîéñòâà è ìåòîäû, íå ñâÿçàííûå, âîîáùå ãîâîðÿ, ñ êîíêðåòíûìè ñâîéñòâàìè è ìåòîäàìè êîíêðåòíîãî ñòðîêîâîãî îáúåêòà (ýêçåìïëÿðà îáúåêòà String)

Ïðèìåð:

 äàííîì ïðèìåðå òðåìÿ ðàçëè÷íûìè ñïîñîáàìè èñïîëüçóåòñÿ ñâîéñòâî length ñòðîêîâîãî îáúåêòà, çíà÷åíèåì êîòîðîãî ÿâëÿåòñÿ äëèíà ñòðîêè (êîëè÷åñòâî ñèìâîëîâ â ñòðîêå).

mystring = "Îäíàæäû â ñòóäåíóþ çèìíþþ ïîðó"
mystring.length //çíà÷åíèå ðàâíî 30
"Îäíàæäû â ñòóäåíóþ çèìíþþ ïîðó".length //çíà÷åíèå ðàâíî 30

function fstring(){return "abcde"} //ôóíêöèÿ, âîçâðàùàþùàÿ ñòðîêó "abcde"
fstring().length //çíà÷åíèå ðàâíî 5

Ìåòîäû ñòðîêîâîãî îáúåêòà èñïîëüçóþòñÿ äëÿ ñèíòàêñè÷åñêîé îáðàáîòêè è ôîðìàòèðîâàíèÿ ñòðîê. Ýòè äâå ãðóïïû ìåòîäîâ ìû ðàññìîòðèì îòäåëüíî

Ñâîéñòâà String

length — äëèíà èëè, èíûìè ñëîâàìè, êîëè÷åñòâî ñèìâîëîâ (âêëþ÷àÿ ïðîáåëû) â ñòðîêå; öåëîå ÷èñëî.
Ïðèìåð:

"Èâàí".length // çíà÷åíèå ðàâíî 4
"Ïðèâåò\nâñåì".length /* çíà÷åíèå ðàâíî 11 (\n — îäèí ñèìâîë ïåðåâîäà ñòðîêè) */
x = "" // ïóñòàÿ ñòðîêà
x.length // çíà÷åíèå ðàâíî 0 (ïóñòàÿ ñòðîêà èìååò äëèíó 0)

prototype — ñâîéñòâî (ïðîòîòèï), ïîçâîëÿþùåå äîáàâèòü íîâûå ñâîéñòâà è ìåòîäû êî âñåì ñîçäàâàåìûì ñòðîêîâûì îáúåêòàì, åñëè óæå ñóùåñòâóþùèõ âàì îêàæåòñÿ íå äîñòàòî÷íî. Ïðèìåð:

 ïðèâåäåííîì íèæå ïðèìåðå ìû ñîçäàåì íîâûé ìåòîä äëÿ âñåõ ñòðîêîâûõ îáúåêòîâ. Ñîäåðæàíèå ýòîãî ìåòîäà îïðåäåëÿåòñÿ ïîëüçîâàòåëüñêîé ôóíêöèåé.

function myFunc() { // ôóíêöèÿ äëÿ íîâîãî ìåòîäà
return "Âàäèì"
}
// Äîáàâëåíèå íîâîãî ìåòîäà myName ê ïðîòîòèïó:
String.prototype.myName() = myFunc
mystring = "Àâòîð ýòîé êíèãè — " + "Äóíàåâ ".myName()
// çíà÷åíèå mystring ðàâíî "Àâòîð ýòîé êíèãè — Äóíàåâ Âàäèì"

Ìåòîäû String îáðàáîòêè ñòðîê

charAt(èíäåêñ) — âîçâðàùàåò ñèìâîë, çàíèìàþùèé â ñòðîêå óêàçàííóþ ïîçèöèþ.
Ñèíòàêñèñ: ñòðîêà.charAt(èíäåêñ)
Âîçâðàùàåò îäíîñèìâîëüíóþ èëè ïóñòóþ ñòðîêó.
Ïàðàìåòð (èíäåêñ) ÿâëÿåòñÿ ÷èñëîì, èíäåêñ ïåðâîãî ñèìâîëà ðàâåí 0.

charCodeAt([èíäåêñ]) — ïðåîáðàçóåò ñèìâîë â óêàçàííîé ïîçèöèè ñòðîêè â åãî ÷èñëîâîé ýêâèâàëåíò ( êîä).
Ñèíòàêñèñ: ñòðîêà. charCodeAt([èíäåêñ])
Âîçâðàùàåò ÷èñëî.
IE4+ è NN6 ïîääåðæèâàþò ñèñòåìó êîäîâ Unicode , NN4 — ISO-Latin1.

fromÑharCode(íîìåð1 [, íîìåð2 [, … íîìåðN]]) — âîçâðàùàåò ñòðîêó ñèìâîëîâ, ÷èñëîâûå êîäû êîòîðîé óêàçàíû â êà÷åñòâå ïàðàìåòðîâ.
Ñèíòàêñèñ: String.fromÑharCode(íîìåð1 [, íîìåð2 [, … íîìåðN]])
Âîçâðàùàåò ñòðîêó.
IE4+ è NN6 ïîääåðæèâàþò ñèñòåìó êîäîâ Unicode , NN4 — ISO-Latin1.

ñoncat(ñòðîêà) — êîíêàòåíàöèÿ (ñêëåéêà) ñòðîê.
Ñèíòàêñèñ: ñòðîêà1.concat(ñòðîêà2)
Âîçâðàùàåò ñòðîêó.
Ýòîò ìåòîä äåéñòâóåò òàê æå, êàê è îïåðàòîð «+» ñëîæåíèÿ äëÿ ñòðîê: ê ñòðîêå ñòðîêà1 ïðèïèñûâàåòñÿ ñïðàâà ñòðîêà ñòðîêà2.

indexOf(ñòðîêà_ïîèñêà [, èíäåêñ]) — ïðîèçâîäèò ïîèñê ñòðîêè, óêàçàííîé ïàðàìåòðîì, è âîçâðàùàåò èíäåêñ åå ïåðâîãî âõîæäåíèÿ.
Ñèíòàêñèñ: ñòðîêà.indexOf(ñòðîêà_ïîèñêà [,èíäåêñ])
Âîçâðàùàåò ÷èñëî.
Ìåòîä ïðîèçâîäèò ïîèñê ïîçèöèè ïåðâîãî âõîæäåíèÿ ñòðîêà_ïîèñêà â ñòðîêó ñòðîêà. Âîçâðàùàåìîå ÷èñëî (èíäåêñ âõîæäåíèÿ) îòñ÷èòûâàåòñÿ îò 0. Åñëè ïîèñê íå óäà÷åí, òî âîçâðàùàåòñÿ –1. Ïîèñê â ïóñòîé ñòðîêå âñåãäà âîçâðàùàåò –1. Ïîèñê ïóñòîé ñòðîêè âñåãäà âîçâðàùàåò 0. Âòîðîé ïàðàìåòð, íå ÿâëÿþùèéñÿ îáÿçàòåëüíûì, óêàçûâàåò èíäåêñ, ñ êîòîðîãî ñëåäóåò íà÷àòü ïîèñê. Ýòîò ìåòîä õîðîøî èñïîëüçîâàòü âìåñòå ñ ìåòîäîì âûäåëåíèÿ ïîäñòðîêè substr() (ñì. íèæå), êîãäà òðåáóåòñÿ ñíà÷àëà îïðåäåëèòü ïîçèöèè íà÷àëà è êîíöà âûäåëÿåìîé ïîäñòðîêè. Ðàññìàòðèâàåìûé çäåñü ìåòîä ïîäõîäèò äëÿ îïðåäåëåíèÿ íà÷àëüíîé ïîçèöèè.

lastIndexOf( ñòðîêà_ïîèñêà [, èíäåêñ]) — ïðîèçâîäèò ïîèñê ñòðîêè, óêàçàííîé ïàðàìåòðîì, è âîçâðàùàåò èíäåêñ åå ïåðâîãî âõîæäåíèÿ; ïðè ýòîì ïîèñê íà÷èíàåòñÿ ñ êîíöà èñõîäíîé ñòðîêè, íî âîçâðàùàåìûé èíäåêñ îòñ÷èòûâàåòñÿ îò åå íà÷àëà, òî åñòü îò 0.
Ñèíòàêñèñ: ñòðîêà.lastIndexOf(ñòðîêà_ïîèñêà [,èíäåêñ])
Âîçâðàùàåò ÷èñëî.
Ìåòîä àíàëîãè÷åí ðàññìîòðåííîìó âûøå indexOf()è îòëè÷àåòñÿ ëèøü íàïðàâëåíèåì ïîèñêà.

localeCompare(ñòðîêà) — ïîçâîëÿåò ñðàâíèâàòü ñòðîêè â êîäèðîâêå Unicode, òî åñòü ñ ó÷åòîì èñïîëüçóåìîãî áðàóçåðîì ÿçûêà îáùåíèÿ ñ ïîëüçîâàòåëåì.
Ñèíòàêñèñ: ñòðîêà1. localeCompare (ñòðîêà2)
Âîçâðàùàåò ÷èñëî.
Ñîâìåñòèìîñòü: IE5.5+, NN6+
Åñëè ñðàâíèâàåìûå ñòðîêè îäèíàêîâû, ìåòîä âîçâðàùàåò 0. Åñëè ñòðîêà1 ìåíüøå, ÷åì ñòðîêà2, òî âîçâðàùàåòñÿ îòðèöàòåëüíîå ÷èñëî, â ïðîòèâíîì ñëó÷àå — ïîëîæèòåëüíîå. Ñðàâíåíèå ñòðîê ïðîèñõîäèò ïóòåì ñðàâíåíèÿ ñóìì êîäîâ èõ ñèìâîëîâ. Àáñîëþòíîå çíà÷åíèå âîçâðàùàåìîãî ÷èñëà çàâèñèò îò áðàóçåðà. Òàê, IE5.5 è IE6.0 âîçâðàùàþò 1 èëè –1, à NN6 — ðàçíîñòü ñóìì êîäîâ â êîäèðîâêå Unicode.

slice( èíäåêñ1 [, èíäåêñ2]) — âîçâðàùàåò ïîäñòðîêó èñõîäíîé ñòðîêè, íà÷àëüíûé è êîíå÷íûé èíäåêñû êîòîðîé óêàçûâàþòñÿ ïàðàìåòðàìè, çà èñêëþ÷åíèåì ïîñëåäíåãî ñèìâîëà.
Ñèíòàêñèñ: ñòðîêà.slice(èíäåêñ1 [, èíäåêñ2])
Âîçâðàùàåò ñòðîêó.
Äàííûé ìåòîä íå èçìåíÿåò èñõîäíóþ ñòðîêó.
Åñëè âòîðîé ïàðàìåòð íå óêàçàí, òî âîçâðàùàåòñÿ ïîäñòðîêà ñ íà÷àëüíîé ïîçèöèåé èíäåêñ1 è äî êîíöà ñòðîêè. Îòñ÷åò ïîçèöèé íà÷èíàåòñÿ ñ íà÷àëà ñòðîêè. Ïåðâûé ñèìâîë ñòðîêè èìååò èíäåêñ 0. Åñëè âòîðîé ïàðàìåòð óêàçàí, òî âîçâðàùàåòñÿ ïîäñòðîêà èñõîäíîé ñòðîêè, íà÷èíàÿ ñ ïîçèöèè èíäåêñ1 è äî ïîçèöèè èíäåêñ2, èñêëþ÷àÿ ïîñëåäíèé ñèìâîë. Åñëè âòîðîé ïàðàìåòð îòðèöàòåëåí, òî îòñ÷åò êîíå÷íîãî èíäåêñà ïðîèçâîäèòñÿ îò êîíöà ñòðîêè.  ýòîì çàêëþ÷àåòñÿ îñíîâíîå îòëè÷èå ìåòîäà slice() îò substr(). Ñðàâíèòå òàêæå ýòîò ìåòîä ñ ìåòîäîì substring().

split( ðàçäåëèòåëü [, îãðàíè÷èòåëü]) — âîçâðàùàåò ìàññèâ ýëåìåíòîâ, ïîëó÷åííûõ èç èñõîäíîé ñòðîêè.
Ñèíòàêñèñ: ñòðîêà.split(ðàçäåëèòåëü [, îãðàíè÷èòåëü])
Âîçâðàùàåò ìàññèâ.
Ïåðâûé ïàðàìåòð ÿâëÿåòñÿ ñòðîêîé ñèìâîëîâ, èñïîëüçóåìîé â êà÷åñòâå ðàçäåëèòåëÿ ñòðîêè íà ýëåìåíòû. Âòîðîé íåîáÿçàòåëüíûé ïàðàìåòð — ÷èñëî, óêàçûâàþùåå, ñêîëüêî ýëåìåíòîâ ñòðîêè, ïîëó÷åííîé ïðè ðàçäåëåëåíèè, ñëåäóåò âêëþ÷èòü â âîçâðàùàåìûé ìàññèâ. Åñëè ðàçäåëèòåëü — ïóñòàÿ ñòðîêà, òî âîçâðàùàåòñÿ ìàññèâ ñèìâîëîâ ñòðîêè.

substr(èíäåêñ [, äëèíà]) — âîçâðàùàåò ïîäñòðîêó èñõîäíîé ñòðîêè, íà÷àëüíûé èíäåêñ è äëèíà êîòîðîé óêàçûâàþòñÿ ïàðàìåòðàìè.
Ñèíòàêñèñ: ñòðîêà.substr(èíäåêñ [, äëèíà])
Âîçâðàùàåò ñòðîêó.
Äàííûé ìåòîä íå èçìåíÿåò èñõîäíóþ ñòðîêó.
Åñëè âòîðîé ïàðàìåòð íå óêàçàí, òî âîçâðàùàåòñÿ ïîäñòðîêà ñ íà÷àëüíîé ïîçèöèåé èíäåêñ1 è äî êîíöà ñòðîêè. Îòñ÷åò ïîçèöèé íà÷èíàåòñÿ ñ íà÷àëà ñòðîêè. Ïåðâûé ñèìâîë ñòðîêè èìååò èíäåêñ 0. Åñëè âòîðîé ïàðàìåòð óêàçàí, òî âîçâðàùàåòñÿ ïîäñòðîêà èñõîäíîé ñòðîêè, íà÷èíàÿ ñ ïîçèöèè èíäåêñ1 è c îáùèì êîëè÷åñòâîì ñèìâîëîâ, ðàâíûì äëèíà. Ñðàâíèòå ýòîò ìåòîä ñ ìåòîäàìè slice() è substring().

substring(èíäåêñ1 , èíäåêñ2) — âîçâðàùàåò ïîäñòðîêó èñõîäíîé ñòðîêè, íà÷àëüíûé è êîíå÷íûé èíäåêñû êîòîðîé óêàçûâàþòñÿ ïàðàìåòðàìè.
Ñèíòàêñèñ: ñòðîêà.substring(èíäåêñ1 , èíäåêñ2)
Âîçâðàùàåò ñòðîêó.
Äàííûé ìåòîä íå èçìåíÿåò èñõîäíóþ ñòðîêó.
Ïîðÿäîê èíäåêñîâ íå âàæåí: íàèìåíüøèé èç íèõ ñ÷èòàåòñÿ íà÷àëüíûì. Îòñ÷åò ïîçèöèé íà÷èíàåòñÿ ñ íà÷àëà ñòðîêè. Ïåðâûé ñèìâîë ñòðîêè èìååò èíäåêñ 0. Ñèìâîë, ñîîòâåòñòâóþùèé êîíå÷íîìó èíäåêñó, íå âêëþ÷àåòñÿ â âîçâðàùàåìóþ ñòðîêó. Ñðàâíèòå ýòîò ìåòîä ñ ìåòîäàìè substr() è slice().

toLocaleLowerCase(), toLowerCase() — ïåðåâîäÿò ñòðîêó â íèæíèé ðåãèñòð.
Ñèíòàêñèñ: ñòðîêà.toLocaleLowerCase(), ñòðîêà.toLowerCase()
Âîçâðàùàþò ñòðîêó. Ïåðâûé ìåòîä ðàáîòàåò â IE5.5+, NN6, ó÷èòûâàåò îïðåäåëåííûå ÿçûêîâûå ñèñòåìû.
Ïðèâåäåíèå ñòðîê ê îäíîìó è òîìó æå ðåãèñòðó òðåáóåòñÿ, íàïðèìåð, ïðè ñðàâíåíèè ñîäåðæèìîãî ñòðîê áåç ó÷åòà ðåãèñòðà. Êðîìå òîãî, ìíîãèå ñåðâåðû ÷óâñòâèòåëüíû ê ðåãèñòðó, â êîòîðîì îïðåäåëåíû èìåíà ôàéëîâ è ïàïêè (îáû÷íî òðåáóåòñÿ, ÷òîáû îíè áûëè îïðåäåëåíû â íèæíåì ðåãèñòðå).

toLocaleUpperCase(), toUpperCase() — ïåðåâîäÿò ñòðîêó â âåðõíèé ðåãèñòð.
Ñèíòàêñèñ: ñòðîêà.toLocaleUpperCase(), ñòðîêà.toUpperCase()
Âîçâðàùàþò ñòðîêó.
Ïåðâûé ìåòîä ðàáîòàåò â IE5.5+, NN6, ó÷èòûâàåò îïðåäåëåííûå ÿçûêîâûå ñèñòåìû.
Ïðèâåäåíèå ñòðîê ê îäíîìó è òîìó æå ðåãèñòðó òðåáóåòñÿ, íàïðèìåð, ïðè ñðàâíåíèè ñîäåðæèìîãî ñòðîê áåç ó÷åòà ðåãèñòðà. Êðîìå òîãî, ìíîãèå ñåðâåðû ÷óâñòâèòåëüíû ê ðåãèñòðó, â êîòîðîì îïðåäåëåíû èìåíà ôàéëîâ è ïàïêè.

Ìåòîäû String ôîðìàòèðîâàíèÿ ñòðîê

Êàê èçâåñòíî, òåêñòû íà Web-ñòðàíèöàõ îáû÷íî ñîçäàþòñÿ è ôîðìàòèðóþòñÿ ñ ïîìîùüþ òýãîâ HTML. Îäíàêî òåêñòû ìîæíî ñîçäàâàòü íà Web-ñòðàíèöàõ è ñ ïîìîùüþ ñöåíàðèåâ. Íàïðèìåð, ÷òîáû âûâåñòè íà Web-ñòðàíèöó ñòðîêó "Ïðèâåò âñåì!" ïîëóæèðíûì øðèôòîì, â HTML-êîäå ñëåäóåò íàïèñàòü ñëåäóþùóþ èíñòðóêöèþ: < B>Ïðèâåò âñåì!< /B>
×òîáû ïîäãîòîâèòü ýòó æå ñòðîêó â òàêîì æå ôîðìàòå ñðåäñòâàìè JavaScript, â ñöåíàðèè ñëåäóåò íàïèñàòü òàêîå âûðàæåíèå: "Ïðèâåò âñåì!".bold()
Çäåñü èñïîëüçîâàí ìåòîä bold() ñòðîêîâîãî îáúåêòà äëÿ ôîðìàòèðîâàíèÿ ñòðîê. Âûïîëíåíèå ýòîãî âûðàæåíèÿ ëèøü ñîçäàåò îòôîðìàòèðîâàííóþ ñòðîêó, íî íå âûâîäèò åå â îêíî áðàóçåðà. ×òîáû ñäåëàòü ýòî, ñëåäóåò åùå âûïîëíèòü ìåòîä write() îáúåêòà document äëÿ çàïèñè ýòîé ñòðîêè â HTML-äîêóìåíò. Ìåòîäû ôîðìàòèðîâàíèÿ ñòðîê íîñÿò íàçâàíèÿ, ñîîòâåòñòâóþùèå òýãàì HTML. Èõ îñîáåííîñòü â òîì, ÷òî â îòëè÷èå îò òýãîâ, èõ ñëåäóåò çàïèñûâàòü òîëüêî â íèæíåì ðåãèñòðå (ñòðî÷íûìè áóêâàìè). Ñèíòàêñèñ òàêîé æå, êàê è ó ðàíåå ðàññìîòðåííûõ ìåòîäîâ: ñòðîêà.ìåòîä(ïàðàìåòð)

Áîëüøèíñòâî ìåòîäîâ ôîðìàòèðîâàíèÿ íå èìåþò ïàðàìåòðîâ. Íèæå ïðèâåäåí èõ ñïèñîê:

anchor("anchor_èìÿ") link(ðàñïîëîæåíèå èëè URL)
blink() big()
bold() small()
fixed() strike()
fontcolor(çíà÷åíèå_öâåòà) sub()
fontsize(÷èñëî îò 1 äî 7) sup()
italics()
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML

Êîììåíòàðèè (0)

Ñïðàâî÷íîå ðóêîâîäñòâî ïî JavaScript 7

Äíåâíèê

Âòîðíèê, 17 Ìàðòà 2009 ã. 21:18 + â öèòàòíèê
Ìîíèñòà (CommandButton) âñå çàïèñè àâòîðà 7. Ôóíêöèè
Ôóíêöèÿ ïðåäñòàâëÿåò ñîáîé ïîäïðîãðàììó, êîòîðóþ ìîæíî âûçâàòü äëÿ âûïîëíåíèÿ, îáðàòèâøèñü ê íåé ïî èìåíè. Âçàèìîäåéñòâèå ôóíêöèè ñ âíåøíåé ïðîãðàììîé, èç êîòîðîé îíà áûëà âûçâàíà, ïðîèñõîäèò ïóòåì ïåðåäà÷è ôóíêöèè ïàðàìåòðîâ è ïðèåìà îò íåå ðåçóëüòàòà âû÷èñëåíèé. Âïðî÷åì, ôóíêöèÿ â JavaScript ìîæåò è íå òðåáîâàòü ïàðàìåòðîâ, à òàêæå íè÷åãî íå âîçâðàùàòü.  JavaScript åñòü âñòðîåííûå ôóíêöèè, êîòîðûå ìîæíî èñïîëüçîâàòü â ïðîãðàììàõ, íî êîä êîòîðûõ íåëüçÿ ðåäàêòèðîâàòü èëè ïîñìîòðåòü. Âñå, ÷òî ìû ìîæåì óçíàòü î íèõ, ýòî — îïèñàíèå èõ äåéñòâèÿ, ïàðàìåòðîâ è âîçâðàùàåìîãî çíà÷åíèÿ. Êðîìå èñïîëüçîâàíèÿ âñòðîåííûõ ôóíêöèé, âû ìîæåòå ñîçäàòü ñâîè ñîáñòâåííûå, òàê íàçûâàåìûå ïîëüçîâàòåëüñêèå ôóíêöèè. ×àñòî èñïîëüçóåìûå ôðàãìåíòû ïðîãðàììíîãî êîäà öåëåñîîáðàçíî îôîðìëÿòü â âèäå ôóíêöèé. Òàêîé ôðàãìåíò êîäà çàêëþ÷àþòñÿ â ôèãóðíûå ñêîáêè, à ïåðåä íèì ïèøåòñÿ êëþ÷åâîå ñëîâî function, çà êîòîðûì ñëåäóþò êðóãëûå ñêîáêè, îáðàìëÿþùèå ñïèñîê ïàðàìåòðîâ. ×òîáû âûçâàòü ôóíêöèþ â ïðîãðàììå, ñëåäóåò íàïèñàòü âûðàæåíèå â ñëåäóþùåì ôîðìàòå: èìÿ_ôóíêöèè (ïàðàìåòðû) Åñëè òðåáóþòñÿ ïàðàìåòðû, òî îíè óêàçûâàþòñÿ â êðóãëûõ ñêîáêàõ ÷åðåç çàïÿòóþ. Ôóíêöèÿ ìîæåò è íå èìåòü ïàðàìåòðîâ.  ýòîì ñëó÷àå â êðóãëûõ ñêîáêàõ íè÷åãî íå óêàçûâàåòñÿ. Ïîäðîáíîñòè èñïîëüçîâàíèÿ ôóíêöèé èçëîæåíû äàëåå â ýòîì ðàçäåëå.
7.1. Âñòðîåííûå ôóíêöèè
 JavaScript èìåþòñÿ ñëåäóþùèå âñòðîåííûå ôóíêöèè, íåêîòîðûå èç êîòîðûõ ìû óæå ðàññìàòðèâàëè âûøå. Õîòÿ äëÿ èëëþñòðàöèè ðàáîòû ýòèõ ôóíêöèé ïðèâîäèòñÿ ìíîæåñòâî ïðèìåðîâ, æåëàòåëüíî âûïîëíèòü èõ ñàìîìó, à òàêæå ïðèäóìàòü ñâîè ïðèìåðû, îáðàùàÿ âíèìàíèå íà êðàéíèå (äàæå àáñóðäíûå) ñëó÷àè.

parseInt(ñòðîêà, îñíîâàíèå) — ïðåîáðàçóåò óêàçàííóþ ñòðîêó â öåëîå ÷èñëî; âòîðîé ïàðàìåòð óêàçûâàåò îñíîâàíèå ñèñòåìû ñ÷èñëåíèÿ (8, 10 èëè 16), â êîòîðîé ïðåäñòàâëåíî ÷èñëî â ñòðîêå; åñëè îñíîâàíèå íå óêàçàíî, òî ïðåäïîëàãàåòñÿ 10, òî åñòü äåñÿòè÷íàÿ ñèñòåìà ñ÷èñëåíèÿ.

parseFloat(ñòðîêà, îñíîâàíèå) — ïðåîáðàçóåò óêàçàííóþ ñòðîêó â ÷èñëî ñ ïëàâàþùåé ðàçäåëèòåëüíîé (äåñÿòè÷íîé) òî÷êîé; âòîðîé ïàðàìåòð óêàçûâàåò îñíîâàíèå ñèñòåìû ñ÷èñëåíèÿ (8, 10 èëè 16), â êîòîðîé ïðåäñòàâëåíî ÷èñëî â ñòðîêå; åñëè îñíîâàíèå íå óêàçàíî, òî ïðåäïîëàãàåòñÿ 10, òî åñòü äåñÿòè÷íàÿ ñèñòåìà ñ÷èñëåíèÿ.

isNaN (çíà÷åíèå) — âîçâðàùàåò true, åñëè óêàçàííîå â ïàðàìåòðå çíà÷åíèå íå ÿâëÿåòñÿ ÷èñëîì, èíà÷å — false.

eval(ñòðîêà) — âû÷èñëÿåò âûðàæåíèå â óêàçàííîé ñòðîêå; âûðàæåíèå äîëæíî áûòü íàïèñàíî íà ÿçûêå JavaScript (íå ñîäåðæèò òýãîâ HTML).

åscape(ñòðîêà) — âîçâðàùàåò ñòðîêó â âèäå %XX, ãäå XX — ASCII-êîä óêàçàííîãî ñèìâîëà; òàêóþ ñòðîêó åùå íàçûâàþò escape-ïîñëåäîâàòåëüíîñòüþ.

unescape(ñòðîêà) — îñóùåñòâëÿåò îáðàòíîå ïðåîáðàçîâàíèå

Ïðè âçàèìîäåéñòâèè áðàóçåðîâ è ñåðâåðîâ ïðîòîêîëû ïåðåäà÷è äàííûõ ïîçâîëÿþò ïåðåäàâàòü íå âñå ñèìâîëû â èõ åñòåñòâåííîì âèäå. Äëÿ ïåðåäà÷è îñòàëüíûõ ñèìâîëîâ èñïîëüçóþòñÿ èõ øåñòíàäöàòåðè÷íûå ASCII-êîäû, ïåðåä êîòîðûìè óêàçûâàåòñÿ ñèìâîë «%». Íàïðèìåð, ïðîáåë ïðåäñòàâëÿåòñÿ â escape-ïîñëåäîâàòåëüíîñòè êàê %20.

typeOf(îáúåêò) — âîçâðàùàåò òèï óêàçàííîãî îáúåêòà â âèäå ñèìâîëüíîé ñòðîêè; íàïðèìåð, "boolean", "function" è ò. ï.
7.2. Ïîëüçîâàòåëüñêèå ôóíêöèè
Ïîëüçîâàòåëüñêèå ôóíêöèè ýòî ôóíêöèè, êîòîðûå âû ìîæåòå ñîçäàòü ñàìè, ïî ñâîåìó óñìîòðåíèþ, äëÿ ðåøåíèÿ ñâîèõ çàäà÷. Ôóíêöèÿ çàäàåòñÿ ñâîèì îïðåäåëåíèåì (îïèñàíèåì ), êîòîðîå íà÷èíàåòñÿ êëþ÷åâûì ñëîâîì function. Òî÷íåå, îïèñàíèå ôóíêöèè èìååò ñëåäóþùèé ñèíòàêñèñ:

function èìÿ_ôóíêöèè(ïàðàìåòðû)
{
êîä
}
×àñòî îïðåäåëåíèå ôóíêöèè çàïèñûâàþò è â òàêèõ ôîðìàõ:

function èìÿ_ôóíêöèè(ïàðàìåòðû) {
êîä
}

function èìÿ_ôóíêöèè(ïàðàìåòðû) { êîä }

Èìÿ ôóíêöèè âûáèðàåòñÿ òàê æå, êàê è èìÿ ïåðåìåííîé. Íå äîïóñòèìî èñïîëüçîâàòü â êà÷åñòâå èìåíè êëþ÷åâûå ñëîâà ÿçûêà JavaScript. Çà èìåíåì ôóíêöèè îáÿçàòåëüíî ñòîèò ïàðà êðóãëûõ ñêîáîê. Ïðîãðàììíûé êîä (òåëî) ôóíêöèè çàêëþ÷àåòñÿ â ôèãóðíûå ñêîáêè. Îíè îïðåäåëÿþò ãðóïïó âûðàæåíèé, êîòîðûå îòíîñÿòñÿ ê êîäó èìåííî ýòîé ôóíêöèè. Åñëè ôóíêöèÿ ïðèíèìàåò ïàðàìåòðû, òî ñïèñîê èõ èìåí (èäåíòèôèêàòîðîâ) óêàçûâàåòñÿ â êðóãëûõ ñêîáêàõ îêîëî èìåíè ôóíêöèè. Èìåíà ïàðàìåòðîâ âûáèðàþòñÿ ñîãëàñíî òåì æå òðåáîâàíèÿì, ÷òî è èìåíà îáû÷íûõ ïåðåìåííûõ. Åñëè ïàðàìåòðîâ íåñêîëüêî, òî â ñïèñêå îíè ðàçäåëÿþòñÿ çàïÿòûìè. Åñëè ïàðàìåòðû äëÿ äàííîé ôóíêöèè íå ïðåäóñìîòðåíû, òî â êðóãëûõ ñêîáêàõ îêîëî èìåíè ôóíêöèè íè÷åãî íå ïèøóò. Êîãäà ñîçäàåòñÿ îïðåäåëåíèå ôóíêöèè, ñïèñîê åå ïàðàìåòðîâ (åñëè îí íåîáõîäèì) ñîäåðæèò ïðîñòî ôîðìàëüíûå èäåíòèôèêàòîðû (èìåíà) ýòèõ ïàðàìåòðîâ, ïîíèìàåìûå êàê ïåðåìåííûå.  îïðåäåëåíèè ôóíêöèè â ñïèñêå ïàðàìåòðîâ, çàêëþ÷åííîì â êðóãëûå ñêîáêè ñðàçó æå çà èìåíåì ôóíêöèè ïîñëå êëþ÷åâîãî ñëîâà function, íåëüçÿ èñïîëüçîâàòü êîíêðåòíûå çíà÷åíèÿ è âûðàæåíèÿ.  ýòîì ñìûñëå îïðåäåëåíèå ôóíêöèè çàäàåò êîä, îïåðèðóþùèé ôîðìàëüíûìè ïàðàìåòðàìè, êîòîðûå êîíêðåòèçèðóþòñÿ ëèøü ïðè âûçîâå ôóíêöèè èç âíåøíåé ïðîãðàììû. Åñëè òðåáóåòñÿ, ÷òîáû ôóíêöèÿ âîçâðàùàëà íåêîòîðîå çíà÷åíèå, òî â åå òåëå èñïîëüçóåòñÿ îïåðàòîð âîçâðàòà return ñ óêàçàíèåì ñïðàâà îò íåãî òîãî, ÷òî ñëåäóåò âîçâðàòèòü.  êà÷åñòâå âîçâðàùàåìîé âåëè÷èíû ìîæåò âûñòóïàòü ëþáîå âûðàæåíèå: ïðîñòîå çíà÷åíèå, èìÿ ïåðåìåííîé èëè âû÷èñëÿåìîå âûðàæåíèå. Îïåðàòîð return ìîæåò âñòðå÷àòüñÿ â êîäå ôóíêöèè íåñêîëüêî ðàç. Âïðî÷åì, âîçâðàùàåìóþ âåëè÷èíó, à òàêæå ñàì îïåðàòîð return ìîæíî è íå óêàçûâàòü.  ýòîì ñëó÷àå ôóíêöèÿ íè÷åãî íå áóäåò âîçâðàùàòü.

ÂÍÈÌÀÍÈÅ
Íå ïóòàéòå îïðåäåëåíèå ôóíêöèè ñ åå âûçîâîì, õîòÿ è òî, è äðóãîå ìîãóò íàõîäèòüñÿ â îäíîé è òîé æå ïðîãðàììå.

 JavaScript ìîæíî íå ïîääåðæèâàòü ðàâåíñòâî ìåæäó êîëè÷åñòâàìè ïàðàìåòðîâ â îïðåäåëåíèè ôóíêöèè è â åå âûçîâå. Åñëè â ôóíêöèè îïðåäåëåíû, íàïðèìåð, òðè ïàðàìåòðà, à â âûçîâå óêàçàíû òîëüêî äâà, òî ïîñëåäíåìó ïàðàìåòðó áóäåò àâòîìàòè÷åñêè ïðèñâîåíî çíà÷åíèå null. Íàîáîðîò, ëèøíèå ïàðàìåòðû â âûçîâå ôóíêöèè áóäóò ïðîñòî ïðîèãíîðèðîâàíû.
Ðóáðèêè:  ïðîãðàììèðîâàíèå
HTML


 Ñòðàíèöû: [2] 1