在以下函数中,弹出信息框之后,我点击确认,返回true,弹出来的却是else的内容,如果我点击取消,弹出的也是else的内容。
如果我改变变量name的名字,那么逻辑判断正确。请问是这个name变量的名字有什么问题吗?
var name = confirm("你喜欢我吗?");
if(name == true){
alert("谢谢,其实我也喜欢你很久了!");
}
else{
alert("操,不喜欢我就滚!");
}
看下你的代码别的地方是不是又定义了一个name
你是不是在window作用域下执行的?这样name是窗口属性window.name,字符串格式的,虽然confirm返回布尔变量但是还是被转为字符串了
function fun() {
var name = confirm('ok')
alert(typeof(name))//boolean
alert(name)
alert(window.name)
}
var name = confirm('window')
alert(typeof (name))//string
alert(name)//true或者false
alert(window.name)//true
fun();