Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.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
Javascript 如何初始化对象并分配不同的变量_Javascript_Jquery_Oop - Fatal编程技术网

Javascript 如何初始化对象并分配不同的变量

Javascript 如何初始化对象并分配不同的变量,javascript,jquery,oop,Javascript,Jquery,Oop,我已经创建了一个对象,需要在其中分配一些变量(参数),当调用该对象时,变量(参数)会发生变化。这是我的密码: var Modal = { init: function () { contact1: ""; contact2: ""; aboutus1: ""; aboutus2: ""; privacy1: ""; privacy2: ""; terms1: "";

我已经创建了一个对象,需要在其中分配一些变量(参数),当调用该对象时,变量(参数)会发生变化。这是我的密码:

var Modal = {

    init: function () {

        contact1: "";
        contact2: "";
        aboutus1: "";
        aboutus2: "";
        privacy1: "";
        privacy2: "";
        terms1:   "";
        terms2:   "";

        $(".modaltrigger").removeAttr("target");

        $(".modaltrigger").click(function () {

            if ($(this).is("#contact")) {

                $('#primary_url').attr('href', contact1);
                $('#secondary_url').attr('href', contact2);

            } else if ($(this).is("#aboutus")) {

                $('#primary_url').attr('href', aboutus1);
                $('#secondary_url').attr('href', aboutus2);

            } else if ($(this).is("#termsconditions")) {

                $('#primary_url').attr('href', terms1);
                $('#secondary_url').attr('href', terms2);

            } else if ($(this).is("#privacy")) {

                $('#primary_url').attr('href', privacy1);
                $('#secondary_url').attr('href', privacy2);
            }
        });
    }
};
我正在尝试初始化上面的对象,但它不起作用:

    Modal.init(

        contact1: "http:www.test1.com";
        contact2: "http:www.test2.com";
        aboutus1: "http:www.test3.com";
        aboutus2: "http:www.test4.com";
        privacy1: "http:www.test5.com";
        privacy2: "http:www.test6.com";
        terms1:   "http:www.test7.com";
        terms2:   "http:www.test8.com"

    );

是这样做的,

我想这就是你想做的

var Modal = {

    init: function (args) {

              //then access your values like this
            contact1=   args.contact1;
            contact2 = args.contact2;
            ..........
            .........
            .........
         }
}
要启动此方法,您必须编写为

Modal.init({
contact1:"contact str",
contact2:"contact str",
.....
.....
lastitem : "last str"
});

你有很多语法问题。控制台应该指向它们。我建议阅读关于函数和对象的教程:。还可以查看有关对象文本的MDN文档:。基本上,如果要向函数传递参数,请使用
function foo(a,b){…}
对其进行定义,并将参数作为逗号分隔的列表传递:
foo('bar',42)。要在块中声明变量,请使用
var a=value,而不是
a:值。这个问题似乎离题了,因为它是关于基本语法问题的。应该参考一些关于变量声明的教程和文档,而不是这样。我注意到了我的语法问题,并将:改为“=”是的,这一个有效!嗯,主要是语法错误,谢谢你,伙计;)