如何在jquery中将数组赋值给变量

时间:2015-08-01 05:22:01

标签: jquery arrays

原始和工作数组是:

 var columns =[{
        name: 'level',
        minWidth: '200px'},
        {
        name: 'subject',
        minWidth: '70px'},
        {
        name: 'catid',
        minWidth: '70px'}],

但是,我想使用if else语句为不同的' target'分配不同的数组。值。 所以我尝试如下,但似乎没有正确地将数组提供给'列'变量

 var useThis=[];
        if(target=="subject")
        {
            useThis = {
            name: 'level',
            minWidth: '200px'},
            {
            name: 'subject',
            minWidth: '70px'},
            {
            name: 'catid',
            minWidth: '70px'};

        }
        else
        {
            useThis = {
            name: 'level',
            minWidth: '200px'};

        }
var columns="["+useThis+"],";

如何使用if else语句正确分配数组?

3 个答案:

答案 0 :(得分:1)

var useThis=[];
        if(target=="subject")
        {
            useThis = [{  <---- Put here Opening bracket
            name: 'level',
            minWidth: '200px'},
            {
            name: 'subject',
            minWidth: '70px'},
            {
            name: 'catid',
            minWidth: '70px'}];  <--- Put here closing bracket

        }
        else
        {
            useThis = [{ <--- Put here opening bracket
            name: 'level',
            minWidth: '200px'}];  <--- Put here closing bracket

        }
var columns = useThis;

<强> JS Fiddle

答案 1 :(得分:0)

我认为你错过了大括号。

if(target=="subject")
        {
            useThis = [{
            name: 'level',
            minWidth: '200px'},
            {
            name: 'subject',
            minWidth: '70px'},
            {
            name: 'catid',
            minWidth: '70px'}];

        }

以下是您如何使用它, http://jsfiddle.net/gvmy9r8o/

答案 2 :(得分:0)

if-else语句本身并没有错。您在其余代码中遇到了几个问题。您正在分配两种不同类型的数据(字典或字典数组),具体取决于是执行if还是else。最后,当您将useThis分配给columns时,您不能只为字符串添加字符串括号。

var useThis=[];
    if(target=="subject")
    {
        useThis = [{
        name: 'level',
        minWidth: '200px'},
        {
        name: 'subject',
        minWidth: '70px'},
        {
        name: 'catid',
        minWidth: '70px'}];

    }
    else
    {
        useThis = [{
        name: 'level',
        minWidth: '200px'}];

    }
var columns = useThis;