为什么不需要定义

来源:5-5 返回值的函数

guessljl

2016-07-19 16:12

 req1=app2(5,6);

 req2=app2(2,3);

 sumq=req1+req2;


document.write("req1的值:"+req1+"<br/>");

document.write("req2的值:"+req2+"<br/>");

document.write(req1+"与"+req2+"和:"+sumq);

这里的req1,req2,sumq为什么不用定义就可以用?


写回答 关注

5回答

  • 冰激凌h2o
    2016-07-19 16:40:54
    已采纳

    js可以随时调用一个字母作为变量,第一次调用的时候隐含的就进行了var声明。在定义一个没有被赋值的变量时是需要var定义的。

    guessl...

    非常感谢!

    2016-07-19 16:51:08

    共 1 条回复 >

  • chenhy3
    2016-07-19 16:56:30

    进行赋值req1=1(不带var),执行过程如下:

    情况一

    该语句是在函数体(function)内,就先在函数体内找变量req1,如果找到,就是给它赋值;

    如果找不到,继续往上在函数体外找变量req1,找到赋值;还是找不到,就会自动在函数体外定义变量var req1.

    情况二(即你的语句)

    全局,往上找变量req1,找到赋值;找不到,就会自动定义变量var req1.

  • JeffC
    2016-07-19 16:43:17

    JS 是弱类型解析语言,可以定义也可以不定义,运行时会自动识别类型

  • L_lili
    2016-07-19 16:42:15

    未声明,则识别为全局变量。

  • Summer131116
    2016-07-19 16:42:00

    js可以随时调用一个字母作为变量,第一次调用的时候隐含的就进行了var声明。所以是不需要定义的。

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题