使用jQuery'在数组中循环;s中的每一个都会在生成字符串时在开头产生一个未定义的值
Looping through an array with jQuery's each causes an undefined value at the start when making string
我有一个值数组,我用它们组成一个长字符串;为此,我使用jQuery的each()
方法,但当我console.log()
是最终值时,它在开头附加了一个undefined
值。
我为数组中的每个值做了一个console.log()
,不存在未定义的值。
CodePen:http://codepen.io/gutterboy/pen/wGdqKo
代码:
var foo, options = [];
var defaults = [
'one', 'two', 'three', 'four', '|',
'five', 'six', 'seven', '|',
];
function bar () {
$.each(defaults, function (index, value) {
if ($.inArray(value, options) === -1) {
if (value == '|') {
foo += value;
} else {
foo += (index == 0) ? value : ',' + value;
}
}
});
console.log(foo);
}
$(document).ready(function() {
bar();
});
您的代码不会初始化foo
。因此其初始值为undefined
。+=
运算符将一个字符串附加到当前值,因此在整个最终结果的开头使用undefined
。
codepen中的代码不会初始化foo。上面的代码将foo初始化为一个数组。尝试:
var foo='';
相关文章:
- 为什么“;未定义的“;在JavaScript中结束循环
- 要求未定义JS回调参数
- 如何检查管道中未定义的项目
- TypeError:无法读取属性'推'未定义的JavaScript
- $window.ga在AngularJS事件中未定义
- 未捕获的TypeError无法读取未定义的属性socialsharing
- 为什么grunt contrib connect的中间件选项的第三个参数是未定义的
- 无法获取属性'selectedIndex'的未定义引用或null引用
- 如何消除代码中的未定义和其他问题
- 未捕获的ReferenceError:$未定义
- this.router在AngularJS 2中未定义
- 未捕获的类型错误:无法读取属性'删除'的未定义
- 节点fs.stat名称未定义
- 尝试在PHP中回显输入文本时出现未定义的索引错误
- Jquery未定义函数正在停止其他操作
- AngularJS指令出错-无法读取属性'编译'的未定义
- 这.SOMETHING 总是返回未定义的 - extjs
- 无法获取属性'Id'使用Knockout.js的未定义或空引用API
- Wordpress中带有JQuery Accordion的未定义匿名函数
- 使用jQuery'在数组中循环;s中的每一个都会在生成字符串时在开头产生一个未定义的值