jquery console.log并提醒不同的值

vyc*_*iuz 1 javascript

我真的不能理解javascript.也许有人可以解释我的区别:

validationErrors[value.element.name] = value.method;
console.log(validationErrors);
alert(validationErrors);
Run Code Online (Sandbox Code Playgroud)

console.log(validationErrors)返回带有值的格式良好的数组,并alert(validationErrors)返回空数组.为什么?

Isa*_*Inc 7

控制台更像是一个调试环境,可以理解在日志函数中传递的JS对象.

另一方面,警报是一个对话框,将其参数强制转换为字符串值.这就是输出格式不如控制台的原因.

以下是警报框中实际发生的一小部分内容.

var validationErrors = [ 2, 3, 4 ];
console.log(toString(validationErrors));
Output >> "[object Window]"
Run Code Online (Sandbox Code Playgroud)

使用控制台进行日志记录而不是警报框也是最佳做法.