哪位大神可以帮我看看我的程序哪出错了吗?

来源:2-4 JavaScript-提问(prompt 消息对话框)

一壶时光

2018-05-27 08:52

 function rec(){
 var score=prompt("请输入您的成绩"); //score变量,用来存储用户输入的成绩值。              ;
   if(score=null)
   {
       document.write("输入成绩");
   }
  
   else if(score>=90)
 {
    document.write("你很棒!");
 }
 else if(score>=75)
    {
    document.write("不错吆!");
 }
 else if(score>=60)
    {
    document.write("要加油!");
    }
  else
  {
      document.write("要努力!");
  }
  }
  rec();
  </script>
</head>
<body>
    <input name="button" type="button" onClick="rec()" value="点击我,对成绩做评价!" />
</body>
</html>


我点击取消按钮,显示的还是要努力并不是返回null,是哪里出错了呢?

写回答 关注

7回答

  • 慕哥6617675
    2018-06-10 13:28:06

    function rec() {

      var score = prompt("请输入您的成绩:");

      if(score== null) {

        document.write("输入成绩");//改为 prompt("输入成绩");

      } else if(score >= 90) {

        document.write("你很棒!");

      } else if(score >= 75) {

        document.write("不错吆!");

      } else if(score >= 60) {

        document.write("要加油!");

      } else {

        document.write("要努力!");

      }

    }

    rec();

  • 慕码人2261623
    2018-06-05 19:19:57

    score=null是赋值



  • qq_偏执_9
    2018-06-05 14:45:31

     if(score==null) 改这个就好了



  • Zz皓
    2018-05-29 17:44:53

    更正一下,你在var score=prompt("请输入您的成绩"); 下面写这么一条语句:console.log(typeof score);可以知道score本身的类型就是string,而且类型永远都是为string,输入一些数值测试一下就知道。

    要想得到正确的结果,这么写就可以了:

    function rec() {

      var score = prompt("请输入您的成绩:");

      if(score.length == 0) {

        document.write("输入成绩");

      } else if(score >= 90) {

        document.write("你很棒!");

      } else if(score >= 75) {

        document.write("不错吆!");

      } else if(score >= 60) {

        document.write("要加油!");

      } else {

        document.write("要努力!");

      }

    }

    rec();


    一壶时光

    谢谢大神解疑~

    2018-05-29 17:55:00

    共 1 条回复 >

  • FLYTHEBEST
    2018-05-28 16:47:20

    score是整型,应该是字符串类型才可以判断是否为空,typeof 'score' == 'string'就可以了。score.length == 0进行为空判断。

    一壶时光

    谢谢解答~

    2018-05-28 21:05:29

    共 1 条回复 >

  • 一壶时光
    2018-05-27 10:25:09

    谢谢大神哈

  • 慕沐7780984
    2018-05-27 09:47:35

    你与第一个if对应的else就是document.write("要努力");啊  想返回null就写成document.write("null");

JavaScript入门篇

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

739817 学习 · 9566 问题

查看课程

相似问题