![](/img/trans.png)
[英]typeof gives me a number but console.log of the same variable gives me NAN how do i fix this
[英]JS Function Gives Me Undefined in Console but I'm Expecting a Number
我正在构建一个JS新闻动态器,以像素像素的形式在画布上呈现字符串。 当渲染字符串的可视长度(以像素为单位并在以下函数中由全局变量“ calc_w
”表示)超过calc_w
的宽度(在以下函数中由全局变量“ w
”表示)时,我需要放置第二个下一行呈现的字符串的一半。 我根据字符串中的空格数(在下面由变量“ spaces
”表示)确定将字符串分解的位置。
但是,我无法弄清楚为什么我的小功能在控制台中返回的是undefined而不是spc_indx[i]
变量的数字。
function ins_breaks(str) {
var spaces = 0;
var spc_indx = [];
if (calc_w > w) {
for (var i = 0; i < str.length; i++) {
if (str.charAt(i) == " ") {
spaces++;
spc_indx[i] = spaces; //Tells the switch where to cut the string.
}
}
switch (spaces) {
case 4:
//4 spaces = 5 words.
var line2 = str.substr(spc_indx[2]);
//str.replace(' ', '');
console.log(spc_indx[2])
break;
case 5:
console.log(spc_indx[2])
break;
}
}
}
记录' spaces
'会产生预期的数字,但是当我将空间分配给spc_indx
数组的一部分时,它将返回未定义状态。 为什么未定义spc_indx
数组,而不是我希望返回的数字?
这是小提琴: https : //jsfiddle.net/9u3ez6gu/22/
spc_indx[i] = spaces;
应该
spc_indx[spaces] = i;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.