首先,根据Javascript的类型转换规则,数组前有加减号(正负号),则该数组将先被转换为“数值类型”后才参与运算。 然后,参照Javascript的类型转换表,空数组向“数值类型”转换时将会转换成数字0。如图 上图是《Javascript权威指南 第6版》P49页 Javascript类型转换表的一部分 所以, 1 2 3 4 5 var a = +[]; //相当于先把空数组 [] 转换为数字 0 后,再运算。结果就是 var a = +0; //即 var a = 0;