Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.0k views
in Technique[技术] by (71.8m points)

变量声明为什么都会返回undefined?

赋值语句返回等号右边的值,为什么声明变量的表达式总是返回undefined?
demo:
var a = 1; 返回undefined
a = 1; 返回1


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

一个是声明,一个是表达式。


声明语句没有返回值,或者说返回的是 ((void*)0),但 JS 里没有 void((void*)0)undefined 可以认为是等价的。


表达式:

The assignment operation evaluates to the assigned value.
 
赋值表达式本身的值为其完成后被赋值的变量的值
 
REF: Assignment (=) - JavaScript | MDN (mozilla.org)

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...