两个'而'''条件?

时间:2016-04-15 07:32:35

标签: javascript while-loop

我试图建立一个与您的名字互动的网站。 当你登录时,你必须先输入你的名字,为此我使用了一个提示窗口(Javascript),这里的问题是用户只需按下'&#39即可轻松进入下一行代码。 ;取消'&#39 ;. 所以我做到了:

while (userName === "" & userName === null); {userName = prompt("What's your name?")}

但是,在用户按下'取消''两次,Javascript完全停止。 这是我的整个代码,包括网站的HTML。忽略HTML:)

<!DOCTYPE html>
<html lang="en-US">

<title>
Javascript
</title>
<head>
</head>
<body>
<table>
<tr>
<td>
<script>
//Here I'll make a few variables for Javascript to work with.
var accessGranted = false
var userName
var userNameConfirmed = false
var userAge
var userAgeConfirmed = false
userName = prompt("What's your name?")
//Now I'll make a while that has two conditions to run.
while (userName === "" & userName === null); {
userName = prompt("Hvad hedder du?")
}</script>
</td>
</tr>
</table>
</body>
</html>

1 个答案:

答案 0 :(得分:1)

请删除此处的分号

var req = {
  method: 'POST',
  url: viewProfileurl,
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
    'Authorization': 'Bearer ' + $rootScope.token,
  },
  params: {
    'action': 'view'
  }

}

$http(req).then(function() {
    // do on response success
}, function() {
   // do on response failure
});

因为semicolon separates statements。下一个块不被视为while (userName === "" & userName === null); { // ^^^ no semicolon // ^^^ change it to || 循环的一部分。

然后您需要将操作符更改为logical OR while,因为您要求输入名称,如果空 ||,则应该提交试。

null