遇到一个 JS 循环问题,求大家帮忙一下,谢谢。

bear63 2014-04-29 12:28:20
已知一个 textarea 里面有以下代码。

颜色:红色,绿色
容量:50ml,100ml,160ml
产品产区:上海,广东
... ...

我需要获取文本框内容。把 颜色: 容量: 产区:分号前文字去掉。
然后把剩下的变成组合,例如组合为:

红色,50ml,上海 红色,50ml,广东 红色,100ml,上海 红色,100ml,广东 红色,160ml,上海 红色,160ml,广东

绿色,50ml,上海 绿色,50ml,广东 绿色,100ml,上海 绿色,100ml,广东 绿色,160ml,上海 绿色,160ml,广东

这样的组合,需要如何实现,谢谢。。
...全文
81 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
bear63 2014-04-29
  • 打赏
  • 举报
回复
老大,遇到你,感觉这个世界充满了爱,谢谢~~~
xuzuning 2014-04-29
  • 打赏
  • 举报
回复
s = "颜色:红色,绿色\n容量:50ml,100ml,160ml\n产品产区:上海,广东";

a = s.split(/[\r\n]+/);
for(i=0; i<a.length; i++) {
  a[i] = a[i].split(/[:,]/).slice(1);
}
r = [];
b = a.shift();
for(i=0; i<b.length; i++) r.push([b[i]]);
p = 0;
while(b = a.shift()) {;
  len = r.length;
  for(; p<len; p++) {
    for(i=0; i<b.length; i++) {
      t = r[p];
      r.push(r[p].concat(b[i]));
    }
  }
}
r = r.slice(len);
for(i=0; i<r.length; i++) {
  document.write(r[i].join(',') + '<br>');
}
红色,50ml,上海 红色,50ml,广东 红色,100ml,上海 红色,100ml,广东 红色,160ml,上海 红色,160ml,广东 绿色,50ml,上海 绿色,50ml,广东 绿色,100ml,上海 绿色,100ml,广东 绿色,160ml,上海 绿色,160ml,广东

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧