Часть кода на js по реализации связного списка. Не понятно в каком месте выделяется память под переменную node. Пытаюсь провести аналогию с C/C++. Там понятно - вот тебе выделение памяти в куче, вот тебе на стеке, c js не понятно и второй вопрос: создаем объект через new, ясно что поля объекта описываются через this как в коде ниже, но что если внутри функции LinkedList() создать что то вроде
var length = 0
var head = null
var Node = function(element){
this.element = element;
this.next = null;
};
Все так же прекрасно работает с заменой в коде this.length на length и так же со всеми остальным,но при этом создать объект,скажем такой
var obj = {
name: 'John',
age: 25,
var test
}
в которым бы фигурировала переменная var test мы не можем, а запись
var list = new LinkedList()
именно и создает нам объект с описанными полями,так что тогда происходит с
var length = 0
var head = null
var Node = ...
Так вот,где в такой случае выделиться память под length,head и Node и почему все таки это работает.
function LinkedList() {
this.length = 0;
this.head = null;
this.Node = function(element){
this.element = element;
this.next = null;
};
this.get_size = () => this.length;
this.get_head = () => this.head;
this.add = function(element){
//в каком месте выделяется память под переменную node?
var node = new this.Node(element);
if(this.head === null){
this.head = node;
} else {
var currentNode = this.head;
while(currentNode.next){
currentNode = currentNode.next;
}
currentNode.next = node;
}
this.length++;
};
...
}
var list = new LinkedList();
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Прошу вашей помощи, так как только учу JSУ меня есть функция, которая рассчитывает цену для первого товара, в зависимости от количества данного...
Пишу чат, сообщения с сервера приходят в виде JSON за вывод сообщений отвечает JSПроблема возникла с разбитием сообщений по дням вот не понимаю...
Лендинг с 4-я блокамиХочу что бы листать можно было только по одному, без разницы сколько прокрутишь мишкой
Использую на сайте готовый плагин анимации, основанный на threejs