Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Всё о работе в Интернет" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Программирование на JavaScript: просто о сложном.
Числовые переменные Числовые значения могут быть либо целыми, либо числами с плавающей точкой. Числа с плавающей точкой называют действительными или вещественными. К числовым значениям применимы операции:
Булевы переменные Булевы, или логические, переменные содержат только литеральные значкения - true и false - и используются в логических выражениях и операторах. Для проверки значения булевой переменной используют и операцию логического равенства: booleanVar == true хотя в данном случае такая операция проверки излишняя. Для проверки значений, которые не являются истинными, используют знак логического отрицания (!). Например, выражение !booleanVar возвратит значение true, если значение booleanVar равно false. Вместо слов "true" и "false" можно использовать числовые значения "1" и "2", поскольку именно такбулевы значения представлены в памяти компьютера: 1==true и 0==false. Переменные-массивы Переменные-массивы содержат упорядоченные наборы значений одного типа, для удобства представленные в виде одной переменной. Многие стандартные объекты-свойства документа в языке JavaScript, в частности гиперсвязи и метки, являются массивами. В языке JavaScript к элементу массива следует обращаться при помощи выражения: arrayName[index] где arrayName - имя массива, а index - числовая переменная или число, задающее позицию элемента в массиве. Например, arrayName[0] является первым элементом этого массива. Индексы элементов массива в языке JavaScript начинаются с нуля. Элементы массива могут быть любого типа, например строками или булевыми переменными. Кроме того, при определенных условиях массив может содержать элементы различных типов данных. В языке JavaScript массивы создаются при помощи:
var path = "c:/images/" , arrayImg = new Array(); arrayImg[0] = path+"img1.gif"; arrayImg[1] = path+"img2.gif"; При использовании конструктора Array() значение свойства length устанавливается автоматически. Поэтому после инициализации элементов массива в приведенном примере выражение arrayImg.length возвращает значение 2. Элементы массива также могут быть заданы как параметры конструктора: var path = "c:/images/" , arrayImg = new Array(path+"img1.gif", path+"img2.gif"); Данное выражение представляет собой сокращенную запись предыдущего примера. В языке JavaScript можно создавать массив, это массив в котором элементы имеют различный тип данных: var myArray = new Array(3.14, true, 85, date(), "word"); создает массив, элемент myArray[0] которого является числом с плавающей запятой, элемент myArray[1] - булевым значением, элемент myArray[3] - объектом Date. Размер массива и, следовательно, значение свойства length объекта, создаваемого конструктором Array(), зависят от максимального значения индекса, который применялся для задания элемента массива. Например: var myArray = new Array; myArray[20] = "Это 21 элемент массива"; двадцать первому элементу массива присваивается строковое значение "Это 21 элемент массива", а значение свойства myArray.length равно 21 независимо от того имеют ли значения элементы массива с индексом меньше 20. Значение свойства length объекта Array автоматически устанавливается при явном указании количества элементов в конструкторе Array(): myArray = new Array(10); оператор создает массив из 10-ти элементов от 0 до 9. Значение свойства length массива нельзя установить путем присваивания, так как length является свойством только для чтения. Например, чтобы задать значение 10 для свойства length нужно только определить значение последнего, в данном случае 9-го элемента массива: myArray = new Array(); myArray[9] = 0; Кроме того, существует возможность задать значения элементов массива при его конструировании : myArray = new Array(0,0,0,0,0,0); Конструктор Object() Понятия объект и массив равнозначны, хотя конструкторы Object() и Array() работают по-разному. Конструктору Object() невозможно передать несколько элементов массива, поэтому такое выражение var myObj = new Object(value1, value2); работать не будет. Массивы, создаваемые при помощи конструктора Object(), не имеют свойства length. Поэтому, создавая массив таким способом, следует либо организовывать обход этого массива посредством цикла for и подсчитать элементы массива, либо жестко задать длину массива как значение его первого элемента (обычно так поступают моделируя свойство length), а затем обращаться к нему по мере необходимости для проверки размера массива, увеличение значения при добавлении нового элемента, а также в качестве параметра цикла при циклическом считывании или изменения значений элементов. Такой объект часто бывает неприемлем для случаев, когда содержимое массива должно динамически изменяться, поэтому в большинстве случаев пользуются конструктором Array(). Значения индексов массивов, создаваемых в конструкторе Object(), также начинаются с нуля. Для создания массива при помощи конструктора Object() принято использовать запись вида: var myObj = new Object(); myObj[0] = 2; // задаем размерность массива myObj[1] = "Первый элемент"; myObj[2] = "Второй элемент"; Чтобы узнать размер массива, созданного подобным образом, необходимо обратиться к элементу myObj[0]. Значением свойства myObj.length является null, так, как значение не определено. Преобразование строк и чисел Наконец подошли к самой интересной теме. Дело в том, что в языке JavaScript в отличие от других языков нет функций типа Val() и Str(). Однажды я видел программку на языке JavaScript, автора не буду называть, где при помощи всевозможных преобразований типов данных была попытка запутать программу для "непродвинутых" пользователей. Так вот, нужно запомнить два правила:
На этом на сегодня все.
Владимир Максимишин
|
В избранное | ||