私はNodeを学び、機能を持たせようとしています:
this.logMeIn = function(username,stream) {
if (username === null || username.length() < 1) {
stream.write("Invalid username, please try again:\n\r");
return false;
} else {
....etc
そして私はそれを渡しています
if (!client.loggedIn) {
if (client.logMeIn(String(data.match(/\S+/)),stream)) {
== と === の両方を試しましたが、ユーザー名が null であることを検出せず、username.length() が失敗するため、まだエラーが発生します。
if (username === null || username.length() < 1) {
^
TypeError: Property 'length' of object null is not a function
Node は || の 2 番目の部分を評価しないと確信しています。最初の部分が true の場合の if ステートメントで - しかし、ユーザー名が null オブジェクトの場合に if ステートメントの最初の部分が false と評価される理由を理解できません。誰かが私が間違ったことを理解するのを手伝ってくれますか?