数组 .each() 循环返回字符串而不是 jQuery 中的值
Array .each() loop returning string instead of value in jQuery
对不起,这可能很简单,但它让我难倒了。 我正在尝试遍历此数组并注销每个值,但脚本正在注销一个字符串对象。
propertiesToSanitize = ["title", "description", "place_name"]
$.each propertiesToSanitize, ->
console.log this
转换为 jQuery 作为
var propertiesToSanitize;
propertiesToSanitize = ["title", "description", "place_name"];
$.each(propertiesToSanitize, function() {
return console.log(this);
});
正在返回:
String
0: "t"
1: "i"
2: "t"
3: "l"
4: "e"
length: 5
知道为什么它返回这个而不仅仅是"标题"或任何其他值吗? 提前感谢任何帮助。
索引
和每次迭代的值作为参数在回调中提供。
$.each(propertiesToSanitize, function(index,value) {
console.log(index + ':' + value);
});
原因是
this
JavaScript 中非常复杂。 回调中的 this
变量通常引用作用域堆栈中不应依赖的内容。 使用jQuery的each
,"Javascript将始终将this
值包装为Object
,即使它是一个简单的字符串或数字值",这就是你所看到的。
jQuery的each
将值作为第二个参数传递给你的回调。在你的 JavaScript 中,你可能想要这样:
$.each(propertiesToSanitize, function(idx, val) {
return console.log(idx + ":" + val);
});
但还要注意的是,CoffeeScript 非常能够在没有 jQuery 帮助的情况下遍历数组:
for propName in propertiesToSanitize
console.log propName
相关文章:
- jQuery字符串使用split()方法在空格后拆分字符串
- jquery字符串变量上的每个函数
- 如何用javascript替换Jquery字符串上的新参数
- jQuery 字符串转义 onclick='deleteRow(item“+count+”)' 如何引用项目和计数
- 使jQuery字符串加载gettext
- 通过AJAX发送jquery字符串,并使用PHP将其保存到html文件中
- JS/Jquery:字符串到单词的文本分割脚本使用字典和最长匹配
- jQuery |字符串替换不起作用
- Jquery 字符串替换,只替换数组的开头
- 以下jQuery字符串连接代码有什么问题
- 未捕获的语法错误:jQuery 字符串中意外的标记 ILLEGAL
- 内联 jquery 字符串 - 为某些单词添加粗体字体
- jquery字符串到数字回到字符串
- jQuery 字符串解析日志 a 404
- JQuery 字符串“随机发生器”聚类字符
- Jquery 字符串连接
- jQuery字符串比较
- 是否可以在一个jquery字符串中使用两种颜色的字体
- Jquery字符串与正则表达式匹配不起作用
- jQuery字符串替换匹配的正则表达式