Ява Золотая: история с географией

Radagast Kary

Спецвыпуск хакер, номер #002, стр. 002-056-4

Но, понятное дело, это еще не все. Теперь мы с тобой рассмотрим еще шесть потомков Object, которыми так или иначе пользуются JavaScript-программисты.

Array - массив. Инициализируется так:

var mycoolArray=new Array(2);

var yourcoolArray=new Array(2,3,4);

var ourcoolArray=new Array(new Array(2), new Array(4,5));

В вышеприведенных примерах в первом случае создается одномерный массив размера 2 (размер массива всегда доступен по arrayName.length), во втором случае - тоже одномерный, но длины 3 и заполненный не нулями, а вполне определенными циферками. Третий пример комбинирует два предыдущих, создавая двумерный массив.

В виде завершения могу привести процедуру увеличения размерности массива на один. Хорошая вещь, использованная мною не в одном скрипте.

function incDim(l)

{

if (l=='nil')

{

var g=new Array(1);

g[0]=new Array(2);

return g;

};

var g=new Array(l.length+1),i;

for(i=0;i<l.length;i++)

{

// в этом примере массив двумерный, но может быть

// и по-другому. Фантазируйте!

g[i]=new Array(2);

g[i][0]=l[i][0];

g[i][1]=l[i][1];

}

g[l.length]=new Array(2);

return g;

}

Boolean - очень малозначный (как и положено) булев тип. Тrue означает правду, false - ложь. Вообще-то, JavaScript - язык бестиповый, как будет отмечено ниже, но полезно знать, что при умышленном конвертировании true переходит в 'true' строковое или 1 числовое, false - в 'false' или 0 соответственно. При конвертировании в Boolean любое не нулевое значение перейдет в true.

Date - немного напоминающий и Global, и Object. Как константа только для чтения существует объект Date. И такой же (только маленький и неизменный) объект может быть создан в любом месте твоего скрипта. Как типовую задачку можно рассмотреть создание часов в статусной строке (это внизу бравзера есть такая фигня).

<HTML>

<HEAD>

<SCRIPT>

// Функцию надо вызывать только один раз.

function display_time_in_status_line()

{

var d = new Date();// который час?

var h = d.getHours();// час от 0 до 23

var m = d.getMinutes();// минуты от 0 до 59

var ampm = (h >= 12)?"PM":"AM"; // AM или PM?

if (h > 12) h -= 12;// нам нужно только первые 12

if (h == 0) h = 12;// полночь

if (m < 10) m = "0" + m;// добавить нулей

var t = h + ':' + m + ' ' + ampm; // пусть лежат вместе

defaultStatus = t;// оно!!!

setTimeout("display_time_in_status_line()", 60000);

// делать ту же гадость каждую минуту

}

</SCRIPT>

</HEAD>

<BODY onLoad="display_time_in_status_line();">

<!-- Здесь лежит очень большой и страшный HTML документ -->

</BODY>

</HTML>

Function - немного извращенный метод использования функции. Обычная функция выглядит так:

function mycoolfunction(f)

{

alert(f++);

return --f;

}

а извращенная форма будет так:

var mycoolvar=new Function("f","alert(f++);return --f;");

Назад на стр. 002-056-3  Содержание  Вперед на стр. 002-056-5

загрузка...
Cпец Хакер #075Cпец Хакер #074Cпец Хакер #073Cпец Хакер #072Cпец Хакер #071Cпец Хакер #070Cпец Хакер #069Cпец Хакер #068Cпец Хакер #067Cпец Хакер #066Cпец Хакер #065Cпец Хакер #064Cпец Хакер #063Cпец Хакер #062Cпец Хакер #061Cпец Хакер #060Cпец Хакер #059Cпец Хакер #058Cпец Хакер #057Cпец Хакер #056Cпец Хакер #055Cпец Хакер #054Cпец Хакер #053Cпец Хакер #052Cпец Хакер #051Cпец Хакер #050Cпец Хакер #049Cпец Хакер #048Cпец Хакер #047Cпец Хакер #046Cпец Хакер #045Cпец Хакер #044Cпец Хакер #043Cпец Хакер #042Cпец Хакер #041Cпец Хакер #040Cпец Хакер #039Cпец Хакер #038Cпец Хакер #037Cпец Хакер #036Cпец Хакер #035Cпец Хакер #034Cпец Хакер #033Cпец Хакер #032Cпец Хакер #031Cпец Хакер #030Cпец Хакер #029Cпец Хакер #028Cпец Хакер #027Cпец Хакер #026Cпец Хакер #025Cпец Хакер #024Cпец Хакер #023Cпец Хакер #022Cпец Хакер #021Cпец Хакер #020Cпец Хакер #019Cпец Хакер #018Cпец Хакер #017Cпец Хакер #016Cпец Хакер #015Cпец Хакер #014Cпец Хакер #013Cпец Хакер #012Cпец Хакер #011Cпец Хакер #010Cпец Хакер #009Cпец Хакер #008Cпец Хакер #007Cпец Хакер #006Cпец Хакер #005Cпец Хакер #004Cпец Хакер #003Cпец Хакер #002Cпец Хакер #001