1

Тема: Як отримати значення об'єкта прямо в константні змінні

наприклад у мене функція повертає об'єкт, я хочу його одразу записати в змінні. І я хочу, щоб ці змінні були константами від початку. Я можу зробити так, але тут нема константності

[g, p] = extract_next_group(str).values();

2

Re: Як отримати значення об'єкта прямо в константні змінні

const використовувати не пробували?

Подякували: Yola1

3

Re: Як отримати значення об'єкта прямо в константні змінні

Дійсно, так працює:

const [g, p] = extract_next_group(str).values();

Тепер питання ускладнюється, мені треба, щоб лише одна зі змінних була сталою, таке в мене не працює

let i = 4; const [i, k] = [1, 2];

каже, що i вже визначена

4

Re: Як отримати значення об'єкта прямо в константні змінні

Ну тоді вам треба детально розібратися, чим відрізняються присвоєння, проголошення і ініціалізація, і обрати, що саме вам тут потрібно для кожної змінної.

Подякували: varkon, 221VOLT2

5

Re: Як отримати значення об'єкта прямо в константні змінні

Yola написав:

наприклад у мене функція повертає об'єкт, я хочу його одразу записати в змінні. І я хочу, щоб ці змінні були константами від початку. Я можу зробити так, але тут нема константності

[g, p] = extract_next_group(str).values();

це ж не erlang/elixir (чи es6 уже вміє отак?)

6 Востаннє редагувалося Yola (20.02.2017 08:19:14)

Re: Як отримати значення об'єкта прямо в константні змінні

Ось мій код, хотілось би, щоб позиція могла змінюватись, а ids і value ні:

function extract_index_command_ids(str, pos) {
    var ids, values;
    [ids, pos] = extract_next_group(str, pos).values();
    [values, pos] = extract_next_group(str, pos).values();
    ...
221VOLT

це JS, навіть в С++ подібне можливо

std::tie(a,b,c) = function_that_returns_tuple();
Подякували: 221VOLT1

7

Re: Як отримати значення об'єкта прямо в константні змінні

Якщо це локальні змінні - просто не змінюйте їх. Це ваша функція.

Подякували: 221VOLT1