<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; JS: Есть у кого-нибудь пример скрипта работающего с JSON форматом?]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=5174</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5174&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «JS: Есть у кого-нибудь пример скрипта работающего с JSON форматом?».]]></description>
		<lastBuildDate>Wed, 17 Nov 2010 09:48:10 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: JS: Есть у кого-нибудь пример скрипта работающего с JSON форматом?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41822#p41822</link>
			<description><![CDATA[<p>JSON - способ записи Javascript.<br />Получение Json<br />1.Вручную<br />2.через сериализатор</p><p>Загрузка<br /></p><div class="codebox"><pre><code>var oRules
............
function load_Rules()
{
if (fso.FileExists(&quot;rules.js&quot;))
{
var xf=fso.OpenTextFile(&quot;rules.js&quot;,1,true)
eval(xf.ReadAll())
xf.close()
} else
{
oRules =[]
}
}</code></pre></div><p>1:<br /></p><div class="codebox"><pre><code>function Save_Rules()
{
var s
var f = fso.OpenTextFile(&quot;Rules.js&quot;, 2, true);
f.WriteLine(&quot;var oRules=[]&quot;)

for (var i=0;i&lt;oRules.length;i++)
{
var Node=oRules[i]
s=[&quot;oRules[oRules.length]= {name:\&quot;&quot;+ss(Node.name)+&quot;\&quot;,&quot;]
s[s.length]=&quot;text:\&quot;&quot;+ss(Node.text)+&quot;\&quot;,&quot;
s[s.length]=&quot;list:[&quot;
var a=Node.list
for (j=0; j&lt;a.length;j++)
{
s[s.length]=&quot;{fio:\&quot;&quot;+a[j].fio+&quot;\&quot;,&quot;
s[s.length]=&quot;e:&quot;+a[j].e+&quot;}&quot;
if (j!=a.length-1)
s[s.length-1]+=&quot;,&quot;
}

s[s.length-1]+=&quot;]}\n\n&quot;
f.WriteLine(s.join(&quot;\n&quot;))
}
f.Close()


function ss(x)
{
return x.replace(/\\/g,&quot;\\\\&quot;)
}
}</code></pre></div><p>2:<br /></p><div class="codebox"><pre><code>function serialize(_obj,eol)
{
   var xeol=(eol==null||!eol)?&quot;&quot;:&quot;\n   &quot;
   
   // Other browsers must do it the hard way

   switch (typeof _obj)
   {
      // numbers, booleans, and functions are trivial:
      // just return the object itself since its default .toString()
      // gives us exactly what we want
      case &#039;number&#039;:
      case &#039;boolean&#039;:
      case &#039;function&#039;:
         return _obj;
         break;
   
      // for JSON format, strings need to be wrapped in double-quotes
      case &#039;string&#039;:
      var a=[&#039;\\&#039;,&#039;\\\\&#039;,&#039;\n&#039;,&#039;\\n&#039;,&#039;\r&#039;,&#039;\\r&#039;,&quot;&#039;&quot;,&quot;\\&#039;&quot;,&quot;\t&quot;,&quot;\\t&quot;];
      for(var i=0;i&lt;8;i+=2){_obj=_obj.split(a[i]).join(a[i+1])};
      _obj=&#039;\&#039;&#039; +_obj+ &#039;\&#039;&#039;
         return _obj;
         break;
   
      case &#039;object&#039;:
         var str;
         if (_obj==null)
         {
         str=&quot;null&quot;
         }
         else if (_obj.constructor === Array || typeof _obj.callee !== &#039;undefined&#039;)
         {

            var i, len = _obj.length;
            if (len&lt;1)
            xeol=&quot;&quot;
            str = xeol+&#039;[&#039;;
            if (len)
            for (i = 0; i &lt; len; i++) 
            { str += serialize(_obj[i],eol) + (i==len-1?&quot;&quot;:&#039;,&#039;); }
            str +=  &#039;]&#039;
         }
         else
         {
            str = xeol+&#039;{&#039;;
            var key;
            var e=true
            for (key in _obj) { 
            if (e)
            e=!e
            else
            str+=xeol

            str += key + &#039;:&#039; + serialize(_obj[key],eol) + &#039;,&#039;; }
            if (!e)
            str = str.substr(0,str.length-(&quot;,&quot;).length) 
            str += &#039;}&#039;
         }
         return str;
         break;
      
      default:
         return &#039;UNKNOWN&#039;;
         break;
   }
}
{
var f =fso.OpenTextFile(&quot;rules.js&quot;, 2, true)
f.Write(&quot;oRules=&quot;+serialize(oRules,true))
f.Close()
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (badik)]]></author>
			<pubDate>Wed, 17 Nov 2010 09:48:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41822#p41822</guid>
		</item>
		<item>
			<title><![CDATA[JS: Есть у кого-нибудь пример скрипта работающего с JSON форматом?]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=41755#p41755</link>
			<description><![CDATA[<p>Нужна небольшая программа, которая должна хранить информацию во внешнем файле:<br /><strong>Наименование, цена, ссылка, краткое описание.</strong><br />Формат для хранения не имеет значения, но я хочу что бы это был удобно-читаемый формат, который возможно было на крайний случай подкорректировать блокнотом.<br />У меня возникло желание чуток разобраться как работает <a href="http://www.json.org/json-ru.html">JSON</a>, потому и спрашиваю. Есть ли у кого-нибудь рабочие примеры?<br />Мне проще начинать изучение ковыряя готовые скрипты, чем писать с полного нуля.</p><p>А может не запариваться и писать в другом формате, например TXT или XML?</p><p>Прошу совета.</p>]]></description>
			<author><![CDATA[null@example.com (DnsIs)]]></author>
			<pubDate>Tue, 16 Nov 2010 09:08:16 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=41755#p41755</guid>
		</item>
	</channel>
</rss>
