请教一下关于javascript的表达式

“表达式(espression)是JavaScript中的一个短语,JavaScript解释器会将其计算出一个结果。”---犀牛书6版。

对于这句话的后半句,“JavaScript解释器会将其计算出一个结果”,我不是很明白。自己总结了一下:
JavaScript会计算表达式的值,并返回这个值,到使用这个表达式的代码所在的位置。****(这么理解对么前辈们?)

var a=1,b=2;
var c=a+b;
alert(c); //3

按照我对表达式的理解,代码 var c=a+b,相当于
var c= 1(找到变量a的值,返回到这里)+ 2(找到变量b的值,返回到这里)
新人学JS,脑子比较慢,请各位多多指教,感谢!

阅读 2.7k
2 个回答

var 是 variable 的简写,也就是“变量”的意思。
程序中,变量是一个可以改变的量(主要是相对于常量来说),为了方便使用,会给变量一个名称,即变更名

JavaScript中,
var a 申明了一个名字为 a 的变量。
var a = 1 申明了一个名字为 a 的变量,并对其赋值为 1
var a = 1, b = 2,申明了名字为 a 的变量并赋值为 1,同时申明名字为 b 的变量,赋值为 2

var c = a + b 是申明了变量 c,然后取 ab 的值,相加得到 3,再将 3 赋值给变量 c

javascript 中有一个变量声明提升的机制,题主既然在看犀牛书,如果是第六版,应该在 3.10.1 小节看到过这个概念,上面的代码,js解析过后可以理解为:

var a, b, c;
a = 1;
b = 2;
c = a + b;

这样看来,其实是先声明a,b,c变量,然后再执行后面的运算。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题