字符串怎么转换成一个元素的数组?

var gzids = new Array();

var sql="select ID from DATA order by ID";

  gzids=FR.remoteEvaluate('=SQL("sjdata","'+sql+'",1)');

alert(gzids[0]);

alert(gzids[1]);


执行上面的代码,如果sql能查出一个ID,比如是“a01”,那么gzids[0]="a",gzids[1]="0",gzids[2]="1"

如果sql能查出多个ID,如“a01”,“a02”,“a03”,“b04”等,那么gzids[0]="a01",gzids[1]="a02",gzids[2]="a03",gzids[3]="b04"

为什么当数组gzids只有一个查询结果的时候,gzids[]各元素就是把这个字符串拆分成字母?

如何实现当只有一个查询结果时,gzids为一个元素的数组呢?让gzids[0]=查询结果,gzids[1]不存在呢


FineReport nhb2318 发布于 2018-12-26 00:36
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
nhb2318Lv4初级互助
发布于2018-12-26 23:17

var gzids = new Array();

var sql="select ID from DATA order by ID";

var gzidstr=FR.remoteEvaluate('=SQL("sjdata","'+sql+'",1)');

var gzids=FR.remoteEvaluate('=split("'+gzidstr+'",",")');

这样写,就算有一个元素,也不会分割字母了

最佳回答
0
touyuan001Lv6中级互助
发布于2018-12-26 08:45

blob.png

最佳回答
0
JBadminLv3初级互助
发布于2018-12-26 09:07


var gzids = new Array();

var sql="select ID from DATA order by ID";

  gzids=FR.remoteEvaluate('=SQL("sjdata","'+sql+'",1)');

假设 这段代码出来 的是 一个【a01,a02,a03,b04】的数组,你可以把这个结果放在A1单元格中,你在A2单元格中写split(A1,","),向下扩展出来 的应该 是 a01 ,a02,a03,b04。。。,你在B2单元格中写split(A2,"")再横向扩展出来就是 a,0,1 

  • 3关注人数
  • 867浏览人数
  • 最后回答于:2018-12-26 23:17
    请选择关闭问题的原因
    确定 取消
    返回顶部