javascript - 使用没有索引的javascript解析数组中的JSON数组

标签 javascript json multidimensional-array

不确定如何用标题来表达我的问题:

这是我的javascript:

$.post("register", element.serialize(),
        function(data){
             if(data.success == "true"){
                           // Do whatever
            } else if (data.success == "false"){

                for (i = 0; i < data.errors.length; i++){
                      // This is what I need to change      
                      alert(data.errors[i][0]);
                }
            }
        }, "json");

这是传入的 JSON 字符串:

{"success":"false","errors":{"username":"error with username","email":"error with email"}}

分手,即:

errors: {
   email: "error with email"
   username: "error with username" }
success: "false"

我希望警报显示“电子邮件错误”和“用户名错误”

虽然我似乎没有做任何事情,但有什么想法吗?

谢谢

最佳答案

问题是您的errors 属性不是数组,而是具有属性的对象。 这是您应该使用的代码:

alert(data.errors.email);

和对象的有效数组声明,注意[]:

errors: [
   { email: "error with email", username: "error with username" },
   { email: "error with email 2", username: "error with username 2" }
]

关于javascript - 使用没有索引的javascript解析数组中的JSON数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8558236/

相关文章:

javascript - 使用 jQuery 改变点击背景颜色

javascript - Canvasjs 图表中的渲染数据

javascript - 向作用域变量 AngularJS 插入和读取 JSON 数据

java - 带文本的二维数组的打印格式

javascript - css 删除文本输入样式

javascript - 将天数添加到日期选择器格式Date

javascript - 如何在 AngularJS 中编写通用排序

json - Mongo-go-driver 从插入结果中获取 objectID

arrays - 如何在 PL/SQL 中手动初始化 RECORD 集合?

python - 在字典的字典中查找最小元素