Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用alert()查看JavaScript中的数组结构?_Javascript - Fatal编程技术网

如何使用alert()查看JavaScript中的数组结构?

如何使用alert()查看JavaScript中的数组结构?,javascript,Javascript,如何使用alert()查看JavaScript中数组的结构?一种非常基本的方法是alert(arrayObj.join('\n')),它将在一行中显示每个数组元素。如果这是为了调试目的,我建议您使用JavaScript调试器,例如。它可以让您查看数组的全部内容以及更多内容,包括修改数组条目和单步执行代码。您可以编写一个函数,将此数组转换为字符串并格式化。更好的方法是:用于调试而不是警报。编辑:Firefox和Google Chrome现在有一个内置的JSON对象,因此您只需说警报(JSON.st

如何使用
alert()
查看JavaScript中数组的结构?

一种非常基本的方法是
alert(arrayObj.join('\n'))
,它将在一行中显示每个数组元素。

如果这是为了调试目的,我建议您使用JavaScript调试器,例如。它可以让您查看数组的全部内容以及更多内容,包括修改数组条目和单步执行代码。

您可以编写一个函数,将此数组转换为字符串并格式化。更好的方法是:用于调试而不是警报。

编辑:Firefox和Google Chrome现在有一个内置的
JSON
对象,因此您只需说
警报(JSON.stringify(myArray))
,而无需使用jQuery插件。这不是Javascript语言规范的一部分,因此您不应该依赖所有浏览器中都存在的
JSON
对象,但出于调试目的,它非常有用

我倾向于使用以下方法:

alert( $.toJSON(myArray) );
这将以如下格式打印数组

[5, 6, 7, 11]
但是,为了调试Javascript代码,我强烈建议它实际上附带一个Javascript控制台,这样您就可以为任何页面键入Javascript代码并查看结果。像数组这样的东西已经以上面使用的人类可读的形式打印出来了


Firebug还有一个调试器,以及帮助您查看和调试HTML和CSS的屏幕。

将js数组传递给下面的函数,它将执行与php print\r()函数相同的操作

警报(打印(您的数组))//这样说吧
功能打印(arr,级别){
var_text=“”;
如果(!level)level=0;
//在行首给出的填充。
var级别_=”;

对于(var j=0;j您可以使用
警报(arrayObj.toSource());
最好使用Firebug(chrome控制台等)和console.dir()

我建议使用toString()


例如,
alert(array.toString())
,或
console.log(array.toString())

如果您想用alert()显示对象数组的内容,我建议您在对象中定义toString()方法,这样就可以用简单的alert(MyArray)来显示数组的全部内容;数组的全部内容将显示在alert中

以下是一个例子:

//-------------------------------------------------------------------
// Defininf the Point object
function Point(CoordenadaX, CoordenadaY) {
    // Sets the point coordinates depending on the parameters defined
    switch (arguments.length) {
        case 0:
            this.x = null;
            this.y = null;
            break;
        case 1:
            this.x = CoordenadaX;
            this.y = null;
            break;
        case 2:
            this.x = CoordenadaX;
            this.y = CoordenadaY;
            break;
    }
    // This adds the toString Method to the point object so the 
    // point can be printed using alert();
    this.toString = function() {
        return " (" + this.x + "," + this.y + ") ";
    };
 }
然后,如果您有一组点:

var MyArray = [];
MyArray.push ( new Point(5,6) );
MyArray.push ( new Point(7,9) );
您只需调用以下命令即可打印:

alert(MyArray);

希望这有帮助!

为了便于阅读,您可以使用:

alert(JSON.stringify(someArrayOrObj',2));

更多关于

示例:

let user = {
  name: "John",
  age: 30,
  roles: {
    isAdmin: false,
    isEditor: true
  }
};

alert(JSON.stringify(user, "", 2));
/* Result:
{
  "name": "John",
  "age": 30,
  "roles": {
    "isAdmin": false,
    "isEditor": true
  }
} 
*/

这并不能回答您的问题,但您应该安装FireBug并使用
console.log
——这对于JavaScript对象的内省非常有用。数组结构是什么意思?您可以循环数组并警告每个值。@Deniz Dogan by console.log您是指shift+R和选项“console”吗?@Deniz-
控制台。调试
实际上会更好。@Tim的结构我指的是索引和值,数组的“原始”视图,就像Firefox下的PHP printfWorks,但不是Safari或MSIE下的PHP printfWorks,请参见此函数使Firefox在解析UI可排序数组时崩溃。问题被标记为
javascript
,它说“除非还包含框架/库的标记,否则需要纯JavaScript回答”。即使不是这样……问题是询问数组,而不是HTML表单。这很好。用数组的名称替换“arrayObj”。因此,如果数组名为myArray,则这是您的代码行:
alert(myArray.join('\n'));
alert(MyArray);
let user = {
  name: "John",
  age: 30,
  roles: {
    isAdmin: false,
    isEditor: true
  }
};

alert(JSON.stringify(user, "", 2));
/* Result:
{
  "name": "John",
  "age": 30,
  "roles": {
    "isAdmin": false,
    "isEditor": true
  }
} 
*/