要设置场景,我使用的是jQuery.我在另一个答案中读到"一些库(jQuery)使用$作为主要基础对象(或函数)".
这很好,但我很困惑的是为什么我可以拥有以下它并且它有效:
$(document).ready(function () {
$(function showPassword () {
//Some code and it works
});
});
Run Code Online (Sandbox Code Playgroud)
但是有了这个,它不起作用:
$(document).ready(function () {
function showPassword () {
//Some code and it doesn't work
};
});
Run Code Online (Sandbox Code Playgroud)
因此,我必须创建那个"基础对象"这一事实,但我可以用Layman的术语解释,因为这显然是基本原理的一部分.
最后的情况是这样的.我有一个$(function showPassword() {开始,但后面有另一个函数(function validatePwdStrength () {.对于第二个函数,我不需要它$(,它的工作.这是因为我以前设置这个'基础对象'?
$(document).ready(function () {
$(function showPassword () {
//Some code and it works
function validatePwdStrength () {
//Some code and it works
}
});
});
Run Code Online (Sandbox Code Playgroud)
注意:根据我读过的内容,我已经使用了几次"基础对象"这个短语,但我并不完全明白这意味着什么.我已经阅读了关于jQuery对象的内容,但这似乎表明虽然它更方便,并且在执行此操作时具有更大的兼容性,但它仍然可以在没有它的情况下工作.所以我遗漏了一些东西,或许很多东西.
在这:
$(document).ready(function () {
$(function showPassword () {
//Some code and it works
});
});
Run Code Online (Sandbox Code Playgroud)
你是 - 冗余 - 安排一旦浏览器构建了DOM就执行"showPassword"函数.这是多余的,因为$(document).ready(...)功能相同$(...).这也可以这样做:
$(function showPassword() {
// the code
});
Run Code Online (Sandbox Code Playgroud)
在这:
$(document).ready(function () {
function showPassword () {
//Some code and it doesn't work
};
});
Run Code Online (Sandbox Code Playgroud)
你只是宣称 "showPassword"功能.如果你不打电话,别的什么都没有.因此,在第二种形式中,这将起作用:
$(document).ready(function () {
function showPassword () {
//Some code and it doesn't work
};
showPassword(); // call the function
});
Run Code Online (Sandbox Code Playgroud)