<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tara Andrei &#187; ajax</title>
	<atom:link href="http://andreitara.com/tag/ajax/feed/" rel="self" type="application/rss+xml" />
	<link>http://andreitara.com</link>
	<description>I could change the world if they would let my allocate more instances of myself.</description>
	<lastBuildDate>Mon, 13 Jun 2011 21:32:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Prototipuri in JAVASCRIPT</title>
		<link>http://andreitara.com/2009/01/prototipuri-in-javascript/</link>
		<comments>http://andreitara.com/2009/01/prototipuri-in-javascript/#comments</comments>
		<pubDate>Mon, 19 Jan 2009 21:36:48 +0000</pubDate>
		<dc:creator>andreiT</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[Programare]]></category>
		<category><![CDATA[web app]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[prototype]]></category>

		<guid isPermaLink="false">http://www.andreitara.com/?p=53</guid>
		<description><![CDATA[Desi javascript nu suporta clase totusi se poate poate programa obiectual si anume folosind prototipuri. Javascript este un limbaj in care gasesti atat cele mai mari idiotenii posibile care s-au putut inventa in vre-un limbaj de programare cat si unele cu adevarat geniale, printre acestea se numara faptul ca un obiect in Javascript este un [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.andreitara.com/wp-content/uploads/2008/11/scripts-icon.png"><img class="alignnone size-medium wp-image-17" title="scripts-icon" src="http://www.andreitara.com/wp-content/uploads/2008/11/scripts-icon.png" alt="" width="128" height="128" /></a>Desi javascript nu suporta clase totusi se poate poate programa obiectual si anume folosind prototipuri. Javascript este un limbaj in care gasesti atat cele mai mari idiotenii posibile care s-au putut inventa in vre-un limbaj de programare cat si unele cu adevarat geniale, printre acestea se numara faptul ca un obiect in Javascript este un container generic la care ii poti adauga oricand o noua proprietate sau &#8220;metoda&#8221;. Mai jos este un exemplu de &#8220;clasa&#8221; (un echivelent al unei clase din limbaje care suporta asa ceva) ce incapsuleaza mecanismul cunoscut si sub denumirea de AJAX.</p>
<p>Pentru cei care nu stiu AJAX este un mecanism de comunicare asicrona cu server-ul, adica pentru a aduce informatie nu este necesara un refresh de pagina.</p>
<p><span id="more-53"></span></p>
<blockquote><p>function AjaxRequest(url)</p>
<p>{</p>
<p>this.url=url;</p>
<p>this.xmlHttp=&#8221;";</p>
<p>this.init=function()</p>
<p>{</p>
<p>try</p>
<p>{</p>
<p>// Firefox, Opera 8.0+, Safari</p>
<p>this.xmlHttp=new XMLHttpRequest();</p>
<p>}</p>
<p>catch (e)</p>
<p>{</p>
<p>// Internet Explorer</p>
<p>try</p>
<p>{</p>
<p>this.xmlHttp=new ActiveXObject(&#8220;Msxml2.XMLHTTP&#8221;);</p>
<p>}</p>
<p>catch (e)</p>
<p>{</p>
<p>try</p>
<p>{</p>
<p>this.xmlHttp=new ActiveXObject(&#8220;Microsoft.XMLHTTP&#8221;);</p>
<p>}</p>
<p>catch (e)</p>
<p>{</p>
<p>alert(&#8220;Your browser does not support AJAX!&#8221;);</p>
<p>return false;</p>
<p>}</p>
<p>}</p>
<p>}</p>
<p>}</p>
<p>this.request=function()</p>
<p>{</p>
<p>this.init();</p>
<p>try{</p>
<p>this.xmlHttp.open(this.requestType,this.url,true);</p>
<p>}</p>
<p>catch(e)</p>
<p>{</p>
<p>this.onLoadFaild(e);</p>
<p>}</p>
<p>this.xmlHttp.send(this.vars);</p>
<p>var parent=this;</p>
<p>this.xmlHttp.onreadystatechange=function()</p>
<p>{</p>
<p>var done = 4, ok = 200;</p>
<p>if (parent.xmlHttp.readyState == done &amp;&amp; parent.xmlHttp.status == ok)</p>
<p>{</p>
<p>if (parent.xmlHttp.responseText)</p>
<p>{</p>
<p>parent.onLoad(parent.xmlHttp.responseText);</p>
<p>}</p>
<p>}</p>
<p>}</p>
<p>}</p>
<p>this.get=function(vars)</p>
<p>{</p>
<p>this.vars=vars;</p>
<p>this.requestType=&#8221;GET&#8221;;</p>
<p>this.request();</p>
<p>}</p>
<p>this.post=function(vars)</p>
<p>{</p>
<p>this.vars=vars;</p>
<p>this.requestType=&#8221;POST&#8221;;</p>
<p>this.request();</p>
<p>}</p>
<p>}</p></blockquote>
<p>Codul este destul de simplu ..aproape ca vorbeste de la sine. Avantajul programarii folosind obiecte este ca utilizare este foarte simpla plus ca putem avea conexiuni multiple pe servere separate</p>
<blockquote><p>script1=new AjaxRequest(&#8220;http://un.site.de.undeva&#8221;);</p>
<p>script1.onLoad=function(sucess){</p>
<p>if(sucess==true){</p>
<p>prelucreaza informatia primita</p>
<p>}</p>
<p>}</p>
<p>script1.get(&#8220;&#8221;);</p>
<p>script2=new AjaxRequest(&#8220;http://un.site.de.altundeva&#8221;);</p>
<p>script2.onLoad=function(sucess){</p>
<p>if(sucess==true){</p>
<p>prelucreaza informatia primita</p>
<p>}</p>
<p>}</p>
<p>script2.get(&#8220;&#8221;);</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://andreitara.com/2009/01/prototipuri-in-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

