我刚刚开始使用Node.js并学习Web开发,但是我对某些符号/符号的含义/功能尚不清楚。
例如,在以下代码中:
$(function() {
$.getJSON('/data', function(data) {
var $dataContainer = $('#data-container');
if (data.error) {
$dataContainer.html('Error! ' + data.error);
return;
}
// Clear the loading message.
$dataContainer.html('');
data.records.forEach(function(record) {
var $galleryCard = $('<div class="gallery-card" />');
if (record.picture[0]) {
// Just show the first picture, if it has one.
$('<img />').attr('src', record.picture[0].url).appendTo($galleryCard);
}
var $label = $('<strong />').text(record.name);
$galleryCard.append($label);
$dataContainer.append($galleryCard);
});
});
});
为什么function()之前有一个“ $ ”?当 $ 在“ .getJSON”前面,变量DataContainer前面和('#data-container')前面时该怎么办?另外,数据容器前面的#表示什么?
谢谢!
答案 0 :(得分:1)
您所引用的代码似乎使用的是jQuery:这是一个JavaScript库,使HTML文档的遍历和操作,事件处理,动画和Ajax等操作变得更加简单。
简单地说,$是访问jQuery库的快捷方式。语法为$(selector).action()。
您所指的#符号是选择器,尤其是ID。选择器使您可以选择和操作不同的元素,在这种情况下,元素是一个id为“ data-container”的元素(可能是div)。
如果您想了解有关jQuery的更多信息,请访问以下网站:https://jquery.com/
要了解有关选择器的更多信息,请访问:https://api.jquery.com/category/selectors/
答案 1 :(得分:0)
代码中的$表示jQuery(这是一个javascript库)对象的别名。 (请参阅this)。
基本上,用简单的话来说,您的代码与nodejs(服务器端javascript)无关,但与浏览器支持的javascript版本有关。