let isValidPassword = function (password) {
    if (password.length <= 8 && password.includes('password')) {
        console.log('Password is not according to Company Policy.');
    } else {
        console.log('Password is accepatble!');
    }
}
isValidPassword();


这里password.length不起作用。

错误是:
TypeError:无法读取未定义的属性“ length”
    位于isValidPassword(C:\ Users \ Gitanshu Choudhary \ Desktop \ modern_js \ hello_earth.js:163:18)
    在对象。 (C:\ Users \ Gitanshu Choudhary \ Desktop \ modern_js \ hello_earth.js:169:1)
    在Module._compile(内部/模块/cjs/loader.js:956:30)
    在Object.Module._extensions..js(内部/模块/cjs/loader.js:973:10)
    在Module.load(internal / modules / cjs / loader.js:812:32)
    在Function.Module._load(内部/模块/cjs/loader.js:724:14)
    在Function.Module.runMain(内部/模块/cjs/loader.js:1025:10)
    在internal / main / run_main_module.js:17:11

最佳答案

您在这里也犯了一个错误,即&&,这表示如果密码小于8,并且密码中也必须存在密码字符串,它将为您提供正确的结果,否则就是错误的。如果两者都为true,则将执行代码,但是为false。

true && true // true
true && false // false


这是正确的结果:



let isValidPassword = function (password) {
    if (password.length <= 8 || password.includes('password') ) {
        console.log('Password is not according to Company Policy.');
    } else {
        console.log('Password is accepatble!');
    }
}
isValidPassword('passwordkksk');





谢谢!

关于javascript - 以下JS代码不适用于函数中的.length属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59005772/

10-15 23:13