Javascript JS函数在控制台中提供了未定义的功能,但我';我在等一个数字
我正在构建一个JS新闻代码,它在画布上以像素字母呈现字符串。当渲染字符串的可视长度(以像素为单位,在下面的函数中用全局变量“Javascript JS函数在控制台中提供了未定义的功能,但我';我在等一个数字,javascript,arrays,object,undefined,Javascript,Arrays,Object,Undefined,我正在构建一个JS新闻代码,它在画布上以像素字母呈现字符串。当渲染字符串的可视长度(以像素为单位,在下面的函数中用全局变量“calc_w”表示)超过画布的宽度(在下面的函数中用全局变量“w”表示)时,我需要将渲染字符串的后半部分放在下一行。我根据字符串中的空格数(以下由变量“spaces”表示)确定在何处拆分字符串 但是,我无法理解为什么我的小函数在控制台中返回undefined,而不是spc\u indx[I]变量的数字 function ins_breaks(str) { var s
calc_w
”表示)超过画布的宽度(在下面的函数中用全局变量“w
”表示)时,我需要将渲染字符串的后半部分放在下一行。我根据字符串中的空格数(以下由变量“spaces
”表示)确定在何处拆分字符串
但是,我无法理解为什么我的小函数在控制台中返回undefined,而不是spc\u 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;
}
}
}
函数插入中断(str){
var空间=0;
var spc_indx=[];
如果(计算w>w){
对于(变量i=0;i
记录“spaces
”会产生预期的数字,但当我将空格分配给spc\u indx
数组的一部分时,它返回时未定义。为什么spc\u indx
数组未定义,并且不是我期望返回的数字
这是小提琴:
应该是
spc_indx[spaces] = i;
什么是
valc_w
和w
设置为,什么是str
?str是字符串,它被传递到顶部的函数。我知道那是什么,我想知道它的值是什么。见附件。你想做什么就做什么。非常感谢你,伙计!那完全奏效了!我知道这很简单,只是我做得不对。再次感谢。只要stack允许,我就会选择这个作为答案。
spc_indx[spaces] = i;