Creater 中定时器问题

sendMessage: function(data) {
        if (!this.isObjectValid()){
            _webSocket = new WebSocket(_url);
            this.bindCallBack(_target);
        }
        var beginTime = new Date().getTime();
        var val = setInterval(function() {
            if(_webSocket.readyState === WebSocket.OPEN){
                _webSocket.send(data);
                clearInterval(val);
                return;
            }
            var nowTime = new Date().getTime();
            var diffTime = parseInt((nowTime - beginTime) / 1000);
            if (diffTime >= 10){
                clearInterval(val);
                //超时操作
            }
        }, 1);
    }


```

上面代码中,在web端正常,但在原生平台上,可以开,但是不可以关(clearInterval无效!)
因为我是自定义的模块,没有继承组件,所有不能使用cc的定时器。所以选择JavaScript的定时器,但是在原生平台下却又问题···
请大神指教····