【发布时间】:2021-07-01 01:44:01
【问题描述】:
我有一个以逗号分隔的字符串构建形式,我使用split 来获取每个值,然后我想在新行上显示每个值,但真正发生的是我在新行上获取每个值,除了最后两个一起显示在同一行上。只是说清楚:
值1
,值2
,值3
,value4,value5
这是我正在使用的功能:
_checkDates: function(dates) {
if (dates != null)
{
var zzz = dates.split(',');
var xxx = zzz.length;
console.log(xxx);
for (var i=0; i<=xxx; i++)
{
zzz[i] = zzz[i] + '<br />';
return zzz;
}
}
return dates;
}
为了清楚这是用 ExtJS 4 编写的,我几乎可以肯定在这种情况下问题是纯 JavaScript 并且与 ExtJS 4 无关,但无论如何,也许我错了。
那么有什么想法为什么会发生,以及如何使最后一个元素也进入新行?
【问题讨论】:
-
为什么在你的 for 循环中有一个等号。那时应该更少。例如。如果 zzz 的长度为 5 (xxx=5),您想访问元素 0 到 4,值 1 索引 =0,值 2 索引 =1,值 3 索引 =2,值 4 索引 =3 和值 5 索引 =4。目前你正在做 0 到 5。因为循环在你达到 5 而不是 4 后退出。因此你试图访问没有任何价值的 zzz[5]。
-
我知道,但我尝试使用
<和<=,即使使用==也没有用。我不知道没有分配<br />标签的原因,实际上这就是我发布问题的原因。下面 Stefan 的回答解决了我当前的问题,但如果有人告诉我脚本中的错误在哪里以及如何修改它以便正常工作,我将不胜感激。
标签: javascript extjs4