Espruino:Справочник по API/Класс E/getSizeOf(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
(Новая страница: «{{Espruino/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} =<ref>[ www.espruino.com - ]</ref>= ==Синтакс...»)
 
Нет описания правки
Строка 3: Строка 3:
{{Myagkij-редактор}}
{{Myagkij-редактор}}


=<ref>[ www.espruino.com - ]</ref>=
=Функция E.getSizeOf()<ref>[https://www.espruino.com/Reference#t_l_E_getSizeOf www.espruino.com - E.getSizeOf]</ref>=


==Синтаксис==
==Синтаксис==


<syntaxhighlight lang="javascript" enclose="div">
<syntaxhighlight lang="javascript" enclose="div">
 
E.getSizeOf(v, depth)
</syntaxhighlight>
</syntaxhighlight>


==Параметры==
==Параметры==


* '''v''' – переменная, размер которой надо узнать
* '''depth''' – уровень подробности результата. Если задать ''depth<=0'' или ''undefined'', то будет возвращено одно целое число
==Возвращаемое значение==
Информацию о размере переменной (см. ниже).


==Описание==


==Возвращаемое значение==
Возвращает количество блоков, используемых заданной переменной. Эта функция может пригодиться в случае, когда у вас не хватает памяти, и вы хотите посмотреть, что занимает большую часть доступной памяти.
 
Если задать в аргументе ''depth'' значение выше нуля, а в v – многосоставную переменную (т.е. переменную, внутри которой что-то есть), функция вернет массив, содержащий названия всех свойств (включая названия внутренних объектов [[Espruino]]) и их размеры. Если задать ''depth>1'', в результате также будет поле ''more'', содержащее информацию о дочерних объектах внутри дочерних объектов.


К примеру, '''E.getSizeOf(function(a,b) { }) '''вернет '''«5»'''.


Но '''E.getSizeOf(function(a,b) { }, 1)''' вернет:


==Описание==
<syntaxhighlight lang="javascript" enclose="div">
[
  {
    "name": "a",
    "size": 1 },
  {
    "name": "b",
    "size": 1 },
  {
    "name": "\xFFcod",
    "size": 2 }
]
</syntaxhighlight>
 
В это случае число ''«2»'' в аргументе ''depth'' не даст никакого результата, т.к. в переменной больше нет дочерних объектов, которые можно было бы показать.


Более подробно читайте [http://www.espruino.com/Internals тут].


'''Примечание:''' Эта функция не доступна для устройств с маленькой [[flash-память]]ю.


=См.также=
=См.также=

Версия от 18:08, 6 декабря 2020

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Функция E.getSizeOf()[1]

Синтаксис

E.getSizeOf(v, depth)

Параметры

  • v – переменная, размер которой надо узнать
  • depth – уровень подробности результата. Если задать depth<=0 или undefined, то будет возвращено одно целое число

Возвращаемое значение

Информацию о размере переменной (см. ниже).

Описание

Возвращает количество блоков, используемых заданной переменной. Эта функция может пригодиться в случае, когда у вас не хватает памяти, и вы хотите посмотреть, что занимает большую часть доступной памяти.

Если задать в аргументе depth значение выше нуля, а в v – многосоставную переменную (т.е. переменную, внутри которой что-то есть), функция вернет массив, содержащий названия всех свойств (включая названия внутренних объектов Espruino) и их размеры. Если задать depth>1, в результате также будет поле more, содержащее информацию о дочерних объектах внутри дочерних объектов.

К примеру, E.getSizeOf(function(a,b) { }) вернет «5».

Но E.getSizeOf(function(a,b) { }, 1) вернет:

[
  {
    "name": "a",
    "size": 1 },
  {
    "name": "b",
    "size": 1 },
  {
    "name": "\xFFcod",
    "size": 2 }
 ]

В это случае число «2» в аргументе depth не даст никакого результата, т.к. в переменной больше нет дочерних объектов, которые можно было бы показать.

Более подробно читайте тут.

Примечание: Эта функция не доступна для устройств с маленькой flash-памятью.

См.также

Внешние ссылки