Какое значение x.fn.x.init[] показано для $() и $(this) в инструментах Chrome Dev
У меня есть привычка отлаживать JS и jQuery скрипт в каком-то инструменте разработчика. Я понял, что Chrome Dev Tools показывает x.fn.x.init в качестве значения для $() и $(this). Однако я не понимаю, каковы эти значения:
Код
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<script src="jquery-2.0.2.min.js" ></script>
<script src="jquery.ui.widget.js" ></script>
<title></title>
<script type="text/javascript">
$(document).ready(function () {
var outstring = "";
outstring = "" + $() + $(this);
});
</script>
</head>
<body>
</body>
</html>
1 ответ
Решение
Это на самом деле РЕАЛЬНЫЙ код для создания экземпляров $
Взгляните на источник GitHub
jQuery.fn = jQuery.prototype = {
// The current version of jQuery being used
jquery: core_version,
constructor: jQuery,
init: function( selector, context, rootjQuery ) {
var match, elem;
.....
а затем в строке 263
// Give the init function the jQuery prototype for later instantiation
jQuery.fn.init.prototype = jQuery.fn;
Поскольку вы используете уменьшенную версию, это превращается в то, что вы видите.