JS 用角度换东南西北

  最近因为业务,正好需要用设备回传的角度值转成用户读得懂的文字形式

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
function toDirStr(num){
    var num=parseInt(num)
    var N='北';
    var E='东';
    var S='南';
    var W='西';
    var dir='';
         
    if(num==0||num==360){
        dir='正'+N;
    }else if(num<90&&num>0){
        if(num<45){
            dir=N+'偏'+E+num+' °';
        }else if(num==45){
            dir=E+N+num+' °';
        }else if(num>45){
            dir=E+'偏'+N+(90-num)+' °';
        }
    }else if(num==90){
        dir='正'+E;
    }else if(num<180&&num>90){
         
        if(num<135){
            dir=E+'偏'+S+(num-90)+' °';
        }else if(num==135){
            dir=E+S+(num-90)+' °';
        }else if(num>135){
            dir=S+'偏'+E+(180-num)+' °';
        }
    }else if(num==180){
        dir='正'+S;
    }else if(num<270&&num>180){
         
        if(num<225){
            dir=S+'偏'+W+(num-180)+' °';
        }else if(num==225){
            dir=W+S+(num-180)+' °';
        }else if(num>225){
            dir=W+'偏'+S+(270-num)+' °';
        }
    }else if(num==270){
        dir='正'+W;
    }else if(num<360&&num>270){
         
        if(num<315){
            dir=W+'偏'+N+(num-270)+' °';
        }else if(num==315){
            dir=W+N+(num-270)+' °';
        }else if(num>315){
            dir=S+'偏'+W+(360-num)+' °';
        }
    }
     
    return dir;
}

  

posted @ 2016-11-21 12:06  源哥来了  阅读(996)  评论(0)    收藏  举报
点击右上角即可分享
微信分享提示