总是返回false | Javascript |对象
我正在从事一个项目,在该项目中,我从一个对象/函数中引用另一个对象/函数中的变量。然而,我总是返回false。我不确定我的称呼是否正确 以下是验证功能:总是返回false | Javascript |对象,javascript,object,Javascript,Object,我正在从事一个项目,在该项目中,我从一个对象/函数中引用另一个对象/函数中的变量。然而,我总是返回false。我不确定我的称呼是否正确 以下是验证功能: app.validation = function(){ 'use strict'; var validCheck = true; if((app.process.user.length < 3) || (app.process.user.length > 50)){ validCheck
app.validation = function(){
'use strict';
var validCheck = true;
if((app.process.user.length < 3) || (app.process.user.length > 50)){
validCheck = false;
window.alert("The username is not acceptable. Example: username");
};
if((app.process.name.length < 3) || (app.process.name.length > 50) || (!app.process.name.indexOf(" ") === -1)){
validCheck = false;
window.alert("The name is not acceptable. Example: John Smith");
};
if((app.process.email.length < 3) || (app.process.email.length > 100) || (!app.process.email.indexOf("@") === -1)){
validCheck = false;
window.alert("The email is not acceptable. Example: john@mail.co.uk");
};
if((app.process.passlength < 6) || (app.process.pass.length > 20)){
validCheck = false;
window.alert("The password is not acceptable. Example: password");
};
if((app.process.age.length < 1) || (app.process.age.length > 2)){
validCheck = false;
window.alert("The age is not acceptable. Example: 22");
};
return validCheck;
};
这段代码还有很多内容,但是在这里发布的代码太多了。这是导致问题的两个函数。您无法访问
app.process
变量,因为它们是函数的专用变量。您需要以某种方式将这些值传递给app.validation来验证它们
我会这样做的
var data = {
user: document.getElementById("user").value,
name: document.getElementById("name").value,
email: document.getElementById("email").value,
pass: document.getElementById("pass").value,
age: document.getElementById("age").value
};
var test = app.validation(data);
并在验证中
app.validation = function(data) { ...
并为
数据替换每个app.process.field
。field
数据是在流程方法中定义的还是全局定义的?在,始终在:)全局变量来自地狱。
app.validation = function(data) { ...