Javascript-форум (https://javascript.ru/forum/)
-   Angular.js (https://javascript.ru/forum/angular/)
-   -   Синтаксис оператора return (https://javascript.ru/forum/angular/63087-sintaksis-operatora-return.html)

Acar 17.05.2016 04:43

Синтаксис оператора return
 
Не могу понять, почему в операторе return через запятую перечисляются переменные.
Разве так можно через запятую перечислять?

function clOpinions() {
        var product = {
            restrict: "AEC",
            scope: {
                id: "=",
                opinions: "="
            },
            controller: clOpinionsCtrl,
        };
        return clOpinionsCtrl.$inject = ["$scope"], product
    }

Acar 17.05.2016 06:53

Цитата:

Сообщение от Rise (Сообщение 416781)
Acar, так можно, а вот так нельзя

Rise, что в таком случае будет возвращено функцией, то что представленно не одной, а несколькими переменными перечисленными в return через запятую?
Объект или массив..

Acar 17.05.2016 07:30

Цитата:

Сообщение от Rise (Сообщение 416785)
Acar, последнее значение, можно даже так
function clOpinions() {
    return clOpinionsCtrl.$inject = ["$scope"], {
        restrict: "AEC",
        scope: {
            id: "=",
            opinions: "="
        },
        controller: clOpinionsCtrl
    }
}

Rise, так что это будет за тип (объект, массив) возвращаемого значения, состоящий из нескольких перечисленных через запятую сущностей в операторе return?
И каким образом затем обратиться, например, к последнему из них в предложенном вами варианте return, ведь у него Вы не оставили имени?

Safort 17.05.2016 07:37

Acar,
Цитата:

так что это будет за тип (объект, массив) возвращаемого значения, состоящий из нескольких перечислееных через запятую сущностей в операторе return?
Оператор запятая вернёт последнее перечисленное значение.

В общем, я просто оставлю это здесь
https://learn.javascript.ru/operator...82%D0%B0%D1%8F

https://habrahabr.ru/post/116827/

Acar 17.05.2016 08:17

Цитата:

Сообщение от Safort (Сообщение 416787)
Acar,

Оператор запятая вернёт последнее перечисленное значение.

Safort, так а какой смысл тогда в return перечислять что-либо через запятую, если все что до последней запятой все равно не возвращается функцией?
Как в моем примере, не возвращается clOpinionsCtrl
return clOpinionsCtrl.$inject = ["$scope"]


Часовой пояс GMT +3, время: 02:50.