热更范例bug?优化?

JS: hotUpdateSearchPaths:["/var/mobile/Containers/Data/Application/4DDFB1C3-20BC-40B8-A981-66B8780D0851/Documents/Game/","/var/mobile/Containers/Data/Application/4DDFB1C3-20BC-40B8-A981-66B8780D0851/Documents/Game/","/var/mobile/Containers/Data/Application/4DDFB1C3-20BC-40B8-A981-66B8780D0851/Documents/Game/","/var/mobile/Containers/Data/Application/4DDFB1C3-20BC-40B8-A981-66B8780D0851/Documents/Game/","/var/mobile/Containers/Data/Application/4DDFB1C3-20BC-40B8-A981-66B8780D0851/Documents/Game/200/","/var/mobile/Containers/Data/Application/4DDFB1C3-20BC-40B8-A981-66B8780D0851/Documents/Game/",""]

若更新100次,在js中搜索路径的值会存N次?cpp代码中,我看了,是会去重的,但是这个路径在js中每次打开会越来越长,是否有问题?

热更范例中的有两行代码,我试过各种姿势修改,都无果,完全搞不懂

    var searchPaths = jsb.fileUtils.getSearchPaths();
    var newPaths = this._am.getLocalManifest().getSearchPaths();

    Array.prototype.unshift(searchPaths, newPaths);

    cc.log("searchPaths:", JSON.stringify(searchPaths) );

    cc.sys.localStorage.setItem( 'HotUpdateSearchPaths', JSON.stringify(searchPaths) );
    jsb.fileUtils.setSearchPaths(searchPaths);

此行代码用于置顶热更路径
Array.prototype.unshift(searchPaths, newPaths);
我试过各种姿势去重修改,都无果

手动去重后,我在把newpaths添加进去,转换成字符删除时,会变成异常字符串比如
["…xx/xx/Game",""] 这是正常的

经过我添加的代码后处理去重后,在转换成字符串时
[["…xx/xx/Game"],""]
会莫名其妙多了一个 [] ,把我添加的路径包起来了,试过各种数组添加方法,各种json处理的方法,到了最后转换时,我代码处理的newpaths元素,最后转换字符串存储时都被[]包了起来,导致最后json转换失败,到了最后,无奈还是用范例的方法,这样在mainjs输出时,会发现最上面那传日志,热更多次后,路径永远无限叠加。。。

当然cpp中断点了,发现会去重,。。。。。。。。。。。可能我强迫症了,我会觉得会不会影响速度,比如叠加了1000次,9999次呢!!!~~~~~

去重代码贴出来,瞅瞅

去重代码贴不贴,其实无所谓,因为后来都删除了,还是按范例中的写法,只是想说这是不是范例中的bug,应该要优化一下吧?

其实根据我反复测试后发现

var searchPaths = jsb.fileUtils.getSearchPaths();

发现热更完后,首次拿出来的路径,就已经把newpaths添加并置顶了,

这句代码Array.prototype.unshift(searchPaths, newPaths); 又来添加,置顶?

诡异~~~~