Скопируйте часть указателей (указывая на новые значения)

this в Javascript всегда ссылается на «владельца» выполняемой функции.

Если явный владелец не определен, то ссылается на самый верхний владелец - объект окна.

Итак, если бы я сделал

function someKindOfFunction() {
   this.style = 'foo';
}

element.onclick = someKindOfFunction;

this, он ссылался бы на объект элемента. Но будьте осторожны, многие люди делают эту ошибку

<element onclick="someKindOfFunction()">

В последнем случае вы просто ссылаетесь на функцию, а не передаете ее элементу. Поэтому this будет ссылаться на объект окна.

2
задан mori 3 March 2019 в 21:16
поделиться

1 ответ

Используйте следующий код для копирования значений:

c := make([]*T, len(s))
for i, p := range s {

    if p == nil {
        // Skip to next for nil source pointer
        continue
    }

    // Create shallow copy of source element
    v := *p

    // Assign address of copy to destination.
    c[i] = &v
}

Запустите его на детской площадке .

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

0
ответ дан Cerise Limón 3 March 2019 в 21:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: