这里面输出的结果是NaN,但如果把counter前面的var去掉,什么都不输出;
还有plus里面的counter能调用外部的var counter=0吗?
如果我把return counter放到plus里面,输出的是undefined,又是为何?
还有plus里面的counter能调用外部的var counter=0吗?
如果我把return counter放到plus里面,输出的是undefined,又是为何?
答:
算是搞明白了,执行顺序的问题,最先执行var counter,变量提升但未赋值,后面再执行document.getElementById('demo')=add();再执行add();最后才是counter=0。所以counter的值是没有调用到的,结果自然是undefined+1=NaN///
如果把var去掉,根本就调用不到counter,加的那自然什么都不输出了
如果把var去掉,根本就调用不到counter,加的那自然什么都不输出了