javascript - jquery函数中的索引是什么意思

标签 javascript jquery logic

我是 jQuery 初学者,所以如果质量不好请原谅我。

我想知道 index 在函数中的含义以及它到底指的是什么。以前我认为它指的是索引号,如 0、1、2、3 等,但是当我通过 1、2、3 代替索引时,我的代码停止工作。我检查了它的类型,它显示了 number 数据类型。 现在让我说说我到底做错了什么,以及 jQuery 中索引和元素的概念,因为我在大多数地方都发现了类似的东西——

function(e){
}

我的工作代码--

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />   
    <title>Example</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$( 'li' ).html(function( index, oldHtml ) {
//alert(typeof($(this).index()));
  return oldHtml + '!!!'
});
});
</script>
</head>
<body>

<ul>
<li>This is List item 1</li>
<li>This is List item 2</li>
<li>This is List item 3</li>
<li>This is List item 4</li>
<li>This is List item 5</li>
</ul>

</body>
</html>

我的尝试——

$( 'li' ).html(function( 3, oldHtml ) {....

$( 'li' ).html(function( "3", oldHtml ) {....

$( 'li' ).eq(3).html(function( "3", oldHtml ) {......

最佳答案

index 参数表示匹配集合中元素的索引。您不应该向它传递值。它是一个传递给匿名函数的参数,如果需要,您可以在内部使用它来准确知道在哪个元素上调用了这个匿名函数:

$( 'li' ).html(function( index, oldHtml ) {
    return 'new html ' + index;
});

索引是从零开始的,所以结果将是:

<li>new html 0</li>
<li>new html 1</li>
<li>new html 2</li>
<li>new html 3</li>
<li>new html 4</li>

关于javascript - jquery函数中的索引是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12456609/

相关文章:

javascript - 获取一个值并根据该值进行数学计算

javascript - 为什么我无法向极坐标立体图添加经纬网? (开放层 4)

jquery - 创建类似 goo.gl 统计信息的动态图和饼图

javascript - 为什么 "true && () => {}"产生 "Uncaught SyntaxError: Malformed arrow function parameter list"?

java - 填充 LinkedHashSet 的奇怪问题

c - 用C中的另一个字符串替换子字符串

javascript - 为什么它说 jqxchart 输入数据数组的格式不正确?

javascript - 澄清 Javascript、Ruby 和 Coffeescript 的区别

javascript - 使用 JQuery Ajax 提交表单不在服务器中工作,但在本地主机中工作 codeigniter

jquery - 单击时从 Bootstrap 数据切换 ="button"获取值