为了账号安全,请及时绑定邮箱和手机立即绑定

JS编程练习问题为什么==ture时候程序不运行,改成!=null就可以了呢?

function openWindow(){
        var btnopen=prompt("是否打开该网站?","www.imooc.com");
        if(btnopen==ture){
            window.open('http://www.imooc.com','_blank','width=400px;height=500px,menubar=no,toolbar=no');
        }
        else{
            alert("再见!")
        }

当我的代码是这样的时候,只显示消息对话框,点击确定,无法弹出新网页。

function openWindow(){
        var btnopen=prompt("是否打开该网站?","www.imooc.com");
        if(btnopen!=null){
            window.open('http://www.imooc.com','_blank','width=400px;height=500px,menubar=no,toolbar=no');
        }
        else{
            alert("再见!")
        }

当代码中的btnopen==ture改成btnopen!=null时候,对话框出现时,点击确定就会弹出新网页,这是为什么?

正在回答

5 回答

true 不等同于null  null是无返回   任何有返回都是!null  但不一定是true

0 回复 有任何疑惑可以回复我~
#1

顾五丑 提问者

非常感谢!
2016-03-30 回复 有任何疑惑可以回复我~

在这里你得明白 prompt()返回的类型是什么,在JavaScript入门篇 2-4里已经说得很明白,1. 点击确定按钮,文本框中的内容将作为函数返回值  2. 点击取消按钮,将返回null,这里并没说有布尔类型,而true是布尔类型 ,所以if(btnopen==ture){} 这种写法不管你点击确定还是取消,都只会弹出alert("再见!")警示框,而不会弹出新窗口。



0 回复 有任何疑惑可以回复我~
#1

顾五丑 提问者

谢谢啦。。。正在看五种简单类型和一种复杂类型。加油!
2016-03-31 回复 有任何疑惑可以回复我~

prompt("是否打开该网站?","  //点击确定返回的内容为prompt提问消息对话框的文本框中的内容"www.imooc.com") 输入的是字符串或数值,所以返回值不能是布尔值的true

0 回复 有任何疑惑可以回复我~
prompt("是否打开该网站?","  //点击确定返回的内容为prompt提问消息对话框的文本框中的内容"www.imooc.com",并不是返回true.

点击“取消”返回的内容是null

0 回复 有任何疑惑可以回复我~

true

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

JS编程练习问题为什么==ture时候程序不运行,改成!=null就可以了呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信