nodejs中的undefined问题

在nodejs中x = 10返回10,var y =5返回undefined,为什么x = 10不返回undefined?
img

JS中赋值语句返回赋值,声明变量语句没有返回值,比如 x = 10 会返回 10,所以会显示10, var y = 5 没有返回值,所以现实undefined。
同理我们还可以这么玩:

let x = 0
if( ( x = 3 ) ) {
  console.log("我被运行啦")
}

img