Добрый день, уважаемые подписчики! Тема сегодняшнего выпуска: «Java Script(JS): Дополнительные приемы работы с объектами. Продолжение. Для углубленного изучения web-программирования (язык PHP и написание своей собственной CMS) советую подписаться на платный раздел (см. анонсы раздела "Пишем Easy CMS"). На прошлом уроке мы рассмотрели такие дополнительные возможности объектов, как удаление их свойств и ключевое слово with. Сегодня рассмотрим некоторые типовые задачи работы с объектами и средства Java Script для решения онных. И так, перебор всех свойств объекта: <html> <head> <title>Урок 82. Java Script (JS): Дополнительные сведения об объектах</title> </head> <body> <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> function Car(a_color, a_vendor, a_model) { this.color=a_color this.vendor=a_vendor this.model=a_model this.get_descr=get_descr } function get_descr() { res='Цвет '+this.color+', Марка машины: '+this.vendor+' '+this.model return res } var myCar=new Car('Maroon','Renault','Logan') for (propertyName in myCar) { document.write(propertyName+'='+myCar[propertyName]+'<br>') } </SCRIPT> </body> </html> | И вот результат его роботы: color=Maroon vendor=Renault model=Logan get_descr=function get_descr() { res='Цвет '+this.color+', Марка машины: '+this.vendor+' '+this.model return res } | При помощи ключевого слова in можно так же проверить, есть ли у объекта заданное свойство, вот пример такой проверки: <html> <head> <title>Урок 82. Java Script (JS): Дополнительные сведения об объектах</title> </head> <body> <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> function Car(a_color, a_vendor, a_model) { this.color=a_color this.vendor=a_vendor this.model=a_model this.get_descr=get_descr } function get_descr() { res='Цвет '+this.color+', Марка машины: '+this.vendor+' '+this.model return res } function Truck(a_tonnage, a_vendor, a_model){ this.tonnage=a_tonnage this.vendor=a_vendor this.model=a_model this.get_descr=get_descr delete this.color this.get_descr=get_descr_truck } function get_descr_truck() { res='Грузоподъемность '+this.tonnage+', Марка машины: '+this.vendor+' '+this.model return res } var myCar=new Car('Maroon','Renault','Logan') if ("color" in myCar) { document.write("У класса Car есть свойство color"+'<br>') } else { document.write("У класса Car нету свойства color"+'<br>') } var myCar1=new Truck('Maroon','Renault','Logan') if ("color" in myCar1) { document.write("У класса Truck есть свойство color"+'<br>') } else { document.write("У класса Truck нету свойства color"+'<br>') } </SCRIPT> </body> </html> | И вот результат работы данной программы: У класса Car есть свойство color У класса Truck нету свойства color | В JavaScript есть так же возможность задать свойства для уже существующих типовых объектов, например, для String. Вот пример использования данной возможности: <html> <head> <title>Урок 82. Java Script (JS): Дополнительные сведения об объектах</title> </head> <body> <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> function toBold() { return "<B>"+this.toString()+"</B>" } String.prototype.toBold=toBold var str="Hello, World!" document.write(str+"<br>"); document.write(str.toBold()+"<br>"); </SCRIPT> </body> </html> | И вот что выдаст данная программа: Hello, World! Hello, World! | С уважением, Шуравин Александр, e-mail: megabax@rambler.ru, автор оставляет за собой право публиковать в рассылках ваши письма, если в письме прямо неоговорено нежелание его публиковать. |
Комментариев нет:
Отправить комментарий
Спасибо за Ваш комментарий. Мы очень ценим его.