sum没有声明直接使用,不会出错?

   function add3(x,y,z)               
 {
   sum = x + y +z;
   document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>");
 }

为啥在函数中参数x,y,z,变量sum,不需要声明呢?


ManGOYi
浏览 1145回答 1
1回答

_潇潇暮雨

如果变量没有var声明,默认是在全局作用域,在浏览器环境中全局作用域为window,所以window.sum = sum。你试试在严格模式下变量未声明是会报错的: 'use strict';    function add3(x,y,z)                  {    sum = x + y +z;    document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>");  } add3(1,2,4)上面的代码将会报错:ReferenceError: sum is not defined.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript