Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Объект Math - Математические вычисления
Объект Mathвключает ряд предопределенных свойств и методов. Свойствами являются определенные числа. Например, число ПИ (приблизительно 3.14159...). Свойство Math.PIиспользуется в приведенном ниже примере.
// Переменная radius является числовым значением. var circleArea = Math.PI * radius * radius; // Вычисление площади круга.
Пример встроенного метода объекта Math: вычисление возведения в степень числа ( pow). Приведенный пример использует число ПИ и метод возведения в степень.
// Вычисление объема сферы в зависимости от радиуса. volume = (4/3)*(Math.PI*Math.pow(radius,3));
Объект Date – Дата Объект Dateприменяется для вывода текущей даты, а также для определения разницы между датами. Все значения методов и свойств предопределены. Вообще объект Dateпозволяет определить день недели; день, месяц, год; а также время в часах, минутах и секундах. Основанием является количество миллисекунд, прошедших с 1-го января 1970 года, 00 ч,00 мин,00.000 сек по GMT. GMT означает "Среднее Время По Гринвичу"; условно UTC, или "Универсальная Координата Времени", являющееся Международным Эталоном Времени. Предупреждение.В JScript для обработки временных величин до полуночи 1-го января 1970 года нельзя применять объект Date. Для работы с временными данными до 1970 года необходимо написать собственные функции. Для создания нового объекта Dateиспользуется оператор new. В следующем примере для текущего года определяется количество прошедших и оставшихся дней.
/* В переменной thisIsToday содержится массив для текущего момента. */ var thisIsToday = new Date(); var toDay = new Date(); // Текущаядата. // Определение года, месяца и дня. var thisYear = toDay.getYear() + 1900; var thisMonth = theMonths[toDay.getMonth()]; var thisDay = thisMonth + " " + toDay.getDate() + "," + (parseInt(toDay.getYear()) + 1900); // Определениеколичествадней. thisDay = Math.round(Date.parse(thisDay)/8.64e7); // То же самое для дня начала текущего года. var firstDay = "Jan 1, " + thisYear; firstDay = Math.floor(Date.parse(firstDay)/8.64e7); // То же самое для дня конца текущего года. var lastDay = "Dec 31, " + thisYear; lastDay = Math.floor(Date.parse(lastDay)/8.64e7); // Количество дней в году. var daysInYear = (lastDay - firstDay) + 1; // Определение количество прошедших и оставшихся дней. var daysElapsed = thisDay - firstDay; var daysLeft = daysInYear - daysElapsed; // Комментарии. var comment1 = daysElapsed+ " days have elapsed in the year."; var comment2 = "That means there are " + daysLeft + " days left in " + thisYear + "."; // Особыеслучаи. if (daysElapsed == 0) { comment1 = "ПервогоЯнваря " + thisYear + " года."; } if (daysElapsed == 1) { comment1 = "Прошелодиндень."; } if(daysElapsed == daysInYear) { comment1 = thisYear + " закончен."; } if (daysLeft == 0) { comment2 = "Наилучшие пожелания в Новом Году!"; } if (daysLeft == 1) { comment2 = "Остался один день в " + thisYear + " году."; } if (daysLeft == daysInYear) { comment2 = "СНовымГодом!"; } Объект Number – Число В дополнение к особым числовым свойствам (PI, например), доступным в объекте Math, в Microsoft JScript доступ к некоторым свойствам происходит через объект Number.
Предупреждение. Number.NaN- особое свойство, означающее нечисловое значение - "not a number." Например, деление на нуль возвращает NaN. Попытка использовать строку как число также возвращает Number.NaN. При сравнении NaNне равно ни какому-либо числу, ни самому себе. Следовательно, для проверки на результат NaN, не следует использовать сравнение с Number.NaN; для этого применяется функция isNaN(). Объекты ActiveX Основные дополнения к языку JavaScript, сделанные корпорацией Microsoft, связаны с использованием управляющих элементов ActiveX . Эти элементы представляют собой динамические библиотеки, созданные в соответствии со стандартом COM. COM (Component Object Model) — это стандарт создания программных компонентов, рассмотрение которого выходит за рамки нашего справочника. Для наших целей вполне достаточно воспринимать элементы ActiveX как черный ящик, выполняющий определенные действия по запросу вызвавшей его программы. Появление элементов ActiveX было порождено стремлением Microsoft создать технологию, которая могла бы успешно конкурировать с подключаемыми модулями обозревателей Netscape. Следует признать, что задача была решена исключительно удачно, т. к. в результате появился стандарт разработки платформо-зависимых программных компонентов, реализующих платформо-независимые протоколы и архитектуры. Все элементы ActiveX при установке в системе Windows регистрируются в ее регистре. При этом в качестве уникального ключа используется GUID данного элемента, т. е. его уникальный 64-разрядный шестнадцатеричный номер. Объект ActiveXObject используется для запуска объектов ActiveX. Он создается конструктором
new ActiveXObject(" сервер . класс " [," адрес "?])
Здесь сервер — имя COM-сервера, класс — имя класса создаваемого объекта, адрес — необязательное имя сетевого сервера, на котором должен быть создан заданный объект (может быть доменным именем или IP-адресом). Создание объекта на удаленном сервере действующими версиями JScirpt пока не поддерживается, т. е. аргумент адрес при вызове данного конструктора игнорируется. После создания объекта ActiveX (т. е. после запуска соответствующей программы) мы можем обращаться к его методам и свойствам, используя стандартный синтаксис языка JavaScript. Встроенных свойств и методов этот объект не имеет. Пример: если на компьютере-клиенте установлен Microsoft Word 7.0, то следующий сценарий его запустит, откроет документ Mydoc.doc, сохранит этот документ в текстовом формате и завершит работу MS Word.
var word = new ActiveXObject("Word.Application"); // запускает MS Word word.Documents.Open("Mydoc.doc"); // открываетдокумент word.ActiveDocument.SaveAs("Mydoc.txt", 4); // 4 = текстовыйформат DOS word.Quit(); // завершает работу MS Word
Следует помнить, что после запуска объекта ActiveX он остается активным до закрытия окна обозревателя, из которого он был вызван. JScript не содержит стандартного средства для завершения работы этого объекта. Если мы хотим, чтобы объект прекратил работу ранее завершения работы нашего сценария, то должны вызвать соответствующий метод данного объекта (в приведенном примере это метод Quit). Любопытно, что операция typeof возвращает для свойств и методов объектов ActiveX нестандартное значение "unknown" (видимо из-за того, что все объекты ActiveX являются наследниками COM-интерфейса IUnknown).
Объект Wscript Объект Wscript позволяет скриптам "познать самих себя". Вдобавок этот объект позволяет скриптам запускать приложения и управлять ими. Основные свойства и методы этого объекта перечислены в таблице:
Объект WsHShell Объект WshShell позволяет скриптам устанавливать и конфигурировать другие приложения. Он также дает возможность общаться с пользователем, изменять Реестр и находить папки. Некоторые его свойства и методы перечислены в таблице.
Вызов WinShell=WScript.CreateObject(“WScript.Shell”) создает экземпляр объекта WshShell. Метод Popup() этого объекта создает диалоговое окно с заголовком для вывода текста. Его параметры: • Текст – выводимый текст • Таймаут – время, пока окно не будет автоматически закрыто. Если параметр равен 0, то окно закрывается пользователем при нажатии кнопки • Заголовок – строка • Кнопки и пиктограмма – вид пиктограммы и набор кнопок Пиктограммы и кнопки определяются числами, для наглядности эти значения присваиваются переменным с определенными мнемоническими именами. Константы видов пиктограмм диалогового окна:
Константы видов кнопок:
Кнопки можно комбинировать, складывая константы Вывод диалогового окна
var mbOKCancel=1, mbInfo=64, mbCancel=2, Text="Test simple", Title="My Title", WshShell=WScript.CreateObject("WScript.Shell"), DoIt=WshShell.Popup(Text,0,Title,mbOKCancel+mbInfo); if(DoIt==mbCancel) { WScript.Quit(); } WScript.Echo("Sample executed");
Вывод диалогового окна с приветствием
varOkOnly=0, Info=64; var cmonth = new Array ("January","February","March","April", "May","June","July","August","September","October","November","December"); var cday=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"); var name="First ", firstname="S.", title="Welcome, "+firstname+" "+name; var objAdr=WScript.CreateObject("WScript.Shell"); var mydate=new Date(), weekday=mydate.getDay(), day=mydate.getDate(), month=mydate.getMonth(),year=mydate.getYear(), text="Today is "+cday[weekday]+" "+cmonth[month]+" "+day+" "+year+"\n"+"Windows has been launched"; objAdr.Popup(text,10,title,OkOnly+Info);
Метод Run() предназначен для вызова программ, в частности, команд MS DOS (являющихся внешними или внутренними утилитами). Для внешних утилит (например, sort, move и т.д.) аргумент метода – строка с именем утилиты. Для выполнения внутренней утилиты (например, dir, copy и т.д.) необходимо запустить командный процессор и передать ему внутреннюю команду. Для Windows 95/98 эта командная строка имеет вид: C:\Windows\command.com /kdir. Параметр /k говорит о том, что окно MS DOS не закрывается. Для Windows 2000/XP командный процессор cmd.exe. Чтобы не зависеть от версии Windows, следует использовать переменную окружения COMSPEC, которая содержит полное имя командного процессора Объект WshArguments служит для доступа к набору аргументов сценария (аргументов командной строки). Его свойство length определяет число аргументов командной строки.
Объект FileSystemObject Объект FileSystemObject (FSO) содержит следующие объекты и коллекции:
Методы: BuildPath(путь,имя) Присоединяет имя к пути файла CopyFile (имя копируемого файла или группы файлов, имя каталога или файла копии[,булевский при знак необходимости перекрытия существующего файла при копировании] ) Копирует один или более файлов из одного положения в другое. По умолчанию последний аргумент равен true Маска * может использоваться только в имени исходного файла. Например, можноиспользовать: fso = CreateObject("Scripting.FileSystemObject"); fso.CopyFile ("c:\\mydocuments\\letters\\ * .doc", "c:\\tempfolder\\") нонельзяиспользовать: fso = CreateObject("Scripting.FileSystemObject"); fso.CopyFile ("c:\\mydocuments\\ * \\R1???97.xls","c:\\tempfolder") CopyFolder ( имя копируемой папки, имя каталога копии [, булевский при знак необходимости перекрытия существующего каталога при копировании] ) Рекурсивно копирует папку из одного положения в другое. Маска * может использоваться только в имени исходного файла. Например, можноиспользовать: fso = CreateObject ("Scripting.FileSystemObject"); fso.CopyFolder ("c:\\mydocuments\\letters\\ * ","c:\\tempfolder\\") нонельзяиспользовать: fso = CreateObject ("Scripting.FileSystemObject"); fso.CopyFolder ("c:\\mydocuments\\ * \\ * ", "c:\\tempfolder\\") Если имя исходной папки содержит символы маски или имя каталога – копии заканчивается символом \, то предполагается, что каталог – копия существует, и в него копируются указанные каталоги и подкаталоги. В противном случае предполагается, что имя каталога – копии есть создаваемая папка. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2018-04-12; просмотров: 405. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |