javascript - 下面的代码中如何有多个 return 语句?谁能解释一下它在这里是如何工作的?

标签 javascript jquery angularjs

我是新进入 angular.js 的人。在 javascript 和 jQuery 中,我们可以返回单个语句。如果我们想返回更多语句,将以数组或对象的形式获取。但它在这里是如何工作的。任何人都可以解释一下这里的概念是什么。抱歉,我问的是基本级别的问题。

(function () {
    angular.module("app", ['ngRoute','app.controller']).config(["$routeProvider",
        function ($routeProvider) {
             var routes, setRoutes;
             return routes = ["test"],
            setRoutes = function (route) {
                var config, url;
                return url = "/" + route, 

                config = {
                    templateUrl: "views/" + route + ".html"                        
                },
                $routeProvider.when(url, config)
            }, 
            routes.forEach(function (route) {
                return setRoutes(route)
            }), 
            $routeProvider.when("/", {
                redirectTo: "/test"
            }).when("/404", {
                templateUrl: ""
            }).otherwise({
                redirectTo: "/testNone"
            })

        }
    ]).run( function() {

        });
}.call(this));

最佳答案

那个返回语句中没有“概念”,它根本没有意义! JavaScript 无法返回多个值(就像在 Python 中通过元组可以做的那样),除非返回数组或对象文字(但无论如何它都是函数返回的单个值)。在该代码中,所有语句都被执行,并且仅返回最新的语句。试试这个片段作为例子:

function f (){
  return 1, 2, 3;
}

alert(f());

警报将是 3! 但这当然没有任何意义。您应该避免这种白痴行为并责怪代码的作者;)

关于javascript - 下面的代码中如何有多个 return 语句?谁能解释一下它在这里是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27152361/

相关文章:

javascript - 表格单元格中图标上的条件 ng 类

javascript - AngularJS 指令聚焦于输入字段 : why is the call to setTimeout needed to make it work?

angularjs - 使用 ng-include 包含 html 文件时发生错误

javascript - React 在组件名称中包含动态 prop 值

javascript - 通过 javascript 显示文本而不是选择的值下拉列表

javascript - 自动选择按钮

javascript - 溢出-x :hidden does not work on mobile devices

javascript - 将 KMZ 图层导入谷歌地图 - Vue 2

php - 从 PHP 获取数组值到 javascript

javascript - JSON无法访问数据返回未定义