<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Математик среди биологов: заметки с тегом памятка</title>
<link>https://antonlyakh.ru/blog/tags/pamyatka/</link>
<description>Я немного умею складывать, но от вычитания у меня всегда кружится голова</description>
<author>Антон Лях</author>
<language>ru</language>
<generator>E2 (v3559; Aegea)</generator>

<itunes:owner>
<itunes:name>Антон Лях</itunes:name>
<itunes:email></itunes:email>
</itunes:owner>
<itunes:subtitle>Я немного умею складывать, но от вычитания у меня всегда кружится голова</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Памятка. Объекты и массивы объектов в Яваскрипте</title>
<guid isPermaLink="true">https://antonlyakh.ru/blog/all/obekty-i-massivy-obektov-v-yavaskripte-dlya-pamyati/</guid>
<link>https://antonlyakh.ru/blog/all/obekty-i-massivy-obektov-v-yavaskripte-dlya-pamyati/</link>
<pubDate>Thu, 15 Nov 2018 16:28:03 +0300</pubDate>
<author>Антон Лях</author>
<comments>https://antonlyakh.ru/blog/all/obekty-i-massivy-obektov-v-yavaskripte-dlya-pamyati/</comments>
<description>
&lt;p&gt;&lt;small&gt;Пиша — учишься.&lt;/small&gt;&lt;/p&gt;
&lt;h2&gt;Очень кратко&lt;/h2&gt;
&lt;p&gt;[...] — массив&lt;br /&gt;
{...} — объект&lt;/p&gt;
&lt;p&gt;{ [...], [...], [...] } — объект хранит массивы&lt;br /&gt;
[ {...}, {...}, {...} ] — массив хранит объекты&lt;/p&gt;
&lt;p&gt;[ [...], [...], [...] ] — двумерный массив&lt;/p&gt;
&lt;p&gt;[ [{...}, {...}], [{...}, {...}], [{...}, {...}] ]  — двумерный массив объектов&lt;/p&gt;
&lt;p&gt;И так далее рекурсивно.&lt;/p&gt;
&lt;h2&gt;Приемы работы&lt;/h2&gt;
&lt;p&gt;Проверить наличие ключа в объекте и удалить ключ объекта.&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;if (&amp;quot;ethanol&amp;quot; in chemicals)
  delete chemicals.ethanol;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;В конец массива можно пушнуть элемент или попнуть оттуда.&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var arra = [];
arra.push(&amp;quot;ficker&amp;quot;);
arra.push(&amp;quot;popinjay&amp;quot;);
// arra[ &amp;quot;ficker&amp;quot;, &amp;quot;popinjay&amp;quot; ];
arra.pop(); // popinjay&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;В начало массива элемент можно шифтнуть или уншифтнуть оттуда.&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var myau = [];
arra.shift(&amp;quot;cat&amp;quot;);
arra.shift(&amp;quot;dog&amp;quot;);
// arra[ &amp;quot;dog&amp;quot;, &amp;quot;shift&amp;quot; ];
arra.unshift(); // dog&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Аналогично в массив можно пушнуть или шифтнуть объект.&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var fish = [];
fish.push( 
  {taxon: &amp;quot;Gobiidae&amp;quot;, weigth: 17, region: &amp;quot;Moscow&amp;quot;}
);&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;В массив можно пушнуть объект содержащий массив.&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var frogs = [];
frogs.push( 
  {color: &amp;quot;violet&amp;quot;, dimensions: [12, 14, 10, 27, 8, 14]}
);&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Пройтись по объектам из массива.&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;for (var item in array_of_objects)
  // item - текущий объект из массива; есть ли у него такое-то свойство-ключ?
  if ( desired_key in item)
     alert( item.desired_key );&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Заполнить массив объектов вычисленными значениями.&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var cloud = [];
var N = 128, i=0;
while(i++ &amp;lt; N)
  cloud.push( {x: Math.random(), y: math.random(), id: i} );&lt;/code&gt;&lt;/pre&gt;&lt;h2&gt;Примеры&lt;/h2&gt;
&lt;p&gt;Массив:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var hex = [1, 2, 3, 4, 5, 6, 7, 8];
alert( hex[4] );&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Объект:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var flex = {
  x: 10,
  y: 50,
  name: &amp;quot;point&amp;quot;
};

var hrex = new Object( {0:&amp;quot;one&amp;quot;, 1:&amp;quot;two&amp;quot;, third : &amp;quot;three&amp;quot;, fourth : &amp;quot;four&amp;quot;} );

alert( flex.x );
alert( flex[&amp;quot;y&amp;quot;] );
alert( hrex[third] );&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Пустой объект, который заполняется позже:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var plex = new Object();

plex[&amp;quot;road&amp;quot;] = &amp;quot;M-86&amp;quot;;
plex[&amp;quot;speed&amp;quot;] = 120;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Объект с массивом:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var hrex = {
  name: &amp;quot;Petr&amp;quot;,
  coins: [1, 2, 3, 4, 5, 6, 7, 8],
  slaves: [&amp;quot;John&amp;quot;, &amp;quot;Abram&amp;quot;, &amp;quot;Rosa&amp;quot;]
}

alert( hrex[slaves][1] );&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Массив объектов:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;var abra = [
  {cadabra: 17, place: &amp;quot;town&amp;quot;},
  {cadabra: 23, place: &amp;quot;lake&amp;quot;},
  {cadabra: 66, place: &amp;quot;street&amp;quot;}
];&lt;/code&gt;&lt;/pre&gt;&lt;h2&gt;Дальнейшее чтиво&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://habr.com/post/247857/"&gt;Все способы перебора массива в JavaScript&lt;/a&gt;&lt;br /&gt;
&lt;a href="https://habr.com/company/ruvds/blog/413169/"&gt;Полезные методы массивов и объектов в JavaScript&lt;/a&gt;&lt;br /&gt;
&lt;a href="https://habr.com/post/240813/"&gt;Выразительный JavaScript: Структуры данных: объекты и массивы&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://habr.com/company/ruvds/blog/429556/"&gt;Руководство по JavaScript, часть 2: стиль кода и структура программ&lt;/a&gt;&lt;br /&gt;
&lt;a href="https://habr.com/company/ruvds/blog/429838/"&gt;Руководство по JavaScript, часть 3: переменные, типы данных, выражения, объекты&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://habr.com/company/ruvds/blog/428566/"&gt;Стрелочные функции в JavaScript: зачем они нужны, как с ними обращаться, когда ими стоит пользоваться, а когда — нет&lt;/a&gt;&lt;br /&gt;
&lt;a href="https://habr.com/company/ruvds/blog/428570/"&gt;Функции высшего порядка в JavaScript&lt;/a&gt;&lt;/p&gt;
</description>
</item>


</channel>
</rss>