【问题标题】:javascript associative array with dynamic variables带有动态变量的javascript关联数组
【发布时间】:2014-02-12 20:28:51
【问题描述】:

我正在尝试在 javascript 中创建一个关联数组,其中一个数组填充了位于复选框 attr 字段中的动态数据 - 称为“路径”和“名称”。我想让它每次选中一个复选框时,它的属性“路径”都是一个索引 - 因为有五个可以选中的复选框可以与该特定路径相关联。如果可能的话,我希望数组是这样的,其中“名称”属性与路径相关联 ["path1","name1","name2","name3","name4","name5","path2" “路径 2 的名称 1”] 我尝试使用对象,但是当我检查复选框时,我只收到一条警告,说“[object Object]”.....有什么想法吗?也许我的措辞令人困惑?

    var array = {};
            $(".checkbox").bind('change',function() {

                            var path = $(this).attr("path");
                            var name = $(this).attr("name");
                            array[path] = name; 

【问题讨论】:

    标签: javascript checkbox associative-array


    【解决方案1】:

    问题不在于您的代码,而在于alert,当传递一个对象时,它会调用其.toString() 方法,该方法通常会报告[object Object]。尝试改用console.dir()

    至于您的对象本身,当您使用{} 时,您拥有的是一个对象,其properties 等效于其他语言中可用的关联数组的keys ,即

    var obj = {
        path1: name1,
        path2: name2,
        ...
    };
    

    它根本不是一个真正的“数组”。

    【讨论】:

    • 哇,不知道!是的,我现在肯定在我的控制台中获得了正确的值。
    猜你喜欢
    • 2011-03-07
    • 1970-01-01
    • 2016-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-04
    • 1970-01-01
    相关资源
    最近更新 更多