te')); return $arr; } /* 遍历用户所有主题 * @param $uid 用户ID * @param int $page 页数 * @param int $pagesize 每页记录条数 * @param bool $desc 排序方式 TRUE降序 FALSE升序 * @param string $key 返回的数组用那一列的值作为 key * @param array $col 查询哪些列 */ function thread_tid_find_by_uid($uid, $page = 1, $pagesize = 1000, $desc = TRUE, $key = 'tid', $col = array()) { if (empty($uid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('uid' => $uid), array('tid' => $orderby), $page, $pagesize, $key, $col); return $arr; } // 遍历栏目下tid 支持数组 $fid = array(1,2,3) function thread_tid_find_by_fid($fid, $page = 1, $pagesize = 1000, $desc = TRUE) { if (empty($fid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('fid' => $fid), array('tid' => $orderby), $page, $pagesize, 'tid', array('tid', 'verify_date')); return $arr; } function thread_tid_delete($tid) { if (empty($tid)) return FALSE; $r = thread_tid__delete(array('tid' => $tid)); return $r; } function thread_tid_count() { $n = thread_tid__count(); return $n; } // 统计用户主题数 大数量下严谨使用非主键统计 function thread_uid_count($uid) { $n = thread_tid__count(array('uid' => $uid)); return $n; } // 统计栏目主题数 大数量下严谨使用非主键统计 function thread_fid_count($fid) { $n = thread_tid__count(array('fid' => $fid)); return $n; } ?>javascript - Jump to a different switch case based on conditon, like a goto - Stack Overflow
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Jump to a different switch case based on conditon, like a goto - Stack Overflow

programmeradmin3浏览0评论

I need to move from one case to another case based on the condition. For example, this is my code:

switch (req.method) {
  case 'GET':
    alert('GET METHOD');
    break;
  case 'POST':
    alert('POST METHOD');
    break;
  case 'PUT':
    alert('PUT METHOD');
    break;
  default:
    res.end();
}

In the above code, in the POST case I need to check, for example if(A === B), then go to the PUT case like that. How to do this?

I need to move from one case to another case based on the condition. For example, this is my code:

switch (req.method) {
  case 'GET':
    alert('GET METHOD');
    break;
  case 'POST':
    alert('POST METHOD');
    break;
  case 'PUT':
    alert('PUT METHOD');
    break;
  default:
    res.end();
}

In the above code, in the POST case I need to check, for example if(A === B), then go to the PUT case like that. How to do this?

Share Improve this question edited Feb 18, 2018 at 22:23 Sebastian Simon 19.5k8 gold badges60 silver badges84 bronze badges asked Jul 23, 2014 at 7:42 thevanthevan 10.4k55 gold badges139 silver badges203 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 9

Make a conditional recursive

function checkMethod(method) {
    switch (method) {
        case 'GET':
            alert('GET METHOD');
            break;
        case 'POST':
            alert('POST METHOD');
            checkMethod('PUT'); // here stand the pros of a function
            break;
        case 'PUT':
            alert('PUT METHOD');
            break;
        default:
            res.end();
    }
}

You can do that by removing the break;. If it reaches the end of the POST case, it will continue with the next case if there is no break;. More Information on switch fallthrough

Example:

switch (req.method) {
 case 'GET':
       alert('GET METHOD');
       break;
 case 'POST':           
       alert('POST METHOD');
       if (A === B) {
           break;
       }
 case 'PUT':
       alert('PUT METHOD');
       break;
 default:
   res.end();
}
发布评论

评论列表(0)

  1. 暂无评论