我正在研究大量的代码,但他的问题是我不知道一条特定的线路在做什么......
他们在这个推送方法中包含了这个符号>
..
我试着提醒,但无法弄清楚。
你能告诉我它做了什么......
// create a UL element
var ul = $('<ul></ul>');
// add some LI elements
ul.append(
$('<li class="bear" data-type="panda">panda bear</li>'),
$('<li class="bear" data-type="koala">koala bear</li>'),
$('<li class="wallaby" data-type="kangaroo">kangaroo</li>')
);
// this won't work because our UL is not in the dom yet
console.log($('.bear').length); //=> 0
// let's just pick the bears in our UL using our UL as the context
var bears = $('.bear', ul);
console.log(bears); //=> [li.bear, li.bear]
// lets loop through and see data attributes
bears.each(function() {
console.log($(this).attr('data-type'));
});
//=> "panda"
//=> "koala"
答案 0 :(得分:2)
似乎htmlArr用于输出HTML - 可能使用像document.write这样的东西; htmlArr.push("'>")
正在推送单引号后跟>
来关闭之前打开的属性和HTML代码。
答案 1 :(得分:1)
htmlArr可能是一个javascript数组对象,而push()方法会向数组中添加一个元素。请参阅:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/push
但是,您在调试/警告语句中使用.push方法,这会修改数组的内容。我怀疑这是你打算做的。此外,push方法的返回值是该修改数组的新长度,可能与您对alert语句中的输出所期望的长度不同。
如果要在某个时刻检查数组的内容,可以尝试console.log(htmlArr)
,它将在开发人员控制台中以一种非常易读的格式输出数组的内容(https://webmasters.stackexchange.com/questions/8525/how-to-open-the-javascript-console-in-different-browsers )。
如果需要/想要使用alert语句进行调试,可以使用数组上的.join方法将其转换为字符串。试试alert(htmlArr.join(''));
。 join方法不会修改数组,因此在调试时可以安全地使用它。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join
或者,学习使用浏览器开发人员控制台的断点功能,并在逐步执行代码时检查对象的值。这是一个链接,可以很好地介绍Chrome浏览器。 https://developers.google.com/chrome-developer-tools/我相信您可以找到您选择的浏览器的其他介绍。