js switch奇怪的问题
```
var result_time = 45852221;
var simple_text;

switch (result_time) {

    case result_time < 60:

        simple_text =  '刚刚';

        break;


    case  result_time > 60 && result_time < 3600 : //分钟前

        simple_text = Math.round(result_time/60)+'分钟前';


        break;


    case  result_time > 3600 && result_time < 86400 : //小时前

        simple_text = Math.round(result_time/60/24)+'小时前';

        break;

    case  result_time > 86400 && result_time < 2592000 : //天前

        simple_text = Math.round(result_time/60/60/24)+'天前';


        break;

    case  result_time > 2592000 && result_time < 31104000 : //月前

        simple_text = Math.round(result_time/60/60/24/30)+'月前';


        break;


    case  result_time > 31104000: //年前

        simple_text = Math.round(result_time/60/60/24/30/12)+'年前';


        break;
}
document.write(simple_text)
```
如上图所示，这是一个简化时间的判断语句，为什么它判断不出任何case？
把`switch (result_time)`改为`switch (true)`就行
`switch`的用法：
```
switch (expression)
  case value:
    statement;
    break;
  case value:
    statement;
    break;
```
`expression`和`value`可以是值，也可以是表达式(表达式其实也是值，`1 < 2` 等价于 `true`)，
只要`expression`等于`value`就会执行相关语句
比如:
```
switch (1 < 2)
{
    case true:
        console.log('true');
        break;
    case false :
        console.log('false');
        break;
}
```
```
switch (true)
{
    case 1 < 2:
        console.log('true');
        break;
    case 1 > 2 :
        console.log('false');
        break;
}
```
上面两个代码其实是一样的