Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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 构建JSON数组并检索其元素的更好方法_Javascript_Arrays_Json - Fatal编程技术网

Javascript 构建JSON数组并检索其元素的更好方法

Javascript 构建JSON数组并检索其元素的更好方法,javascript,arrays,json,Javascript,Arrays,Json,以下是我初始化和构建阵列的方式: var newCountyInfo = new Object(); newCountyInfo.name = newCountyName; newCountyInfo.state = newCountyState; newCountyInfo.zips = newCountyZips; newCountyInfo.branchID = newCountyBranchID; 我在数组中有四个元素。然后我将newCountyInfo传递给另一个函数,以提取一些H

以下是我初始化和构建阵列的方式:

var newCountyInfo = new Object();

newCountyInfo.name = newCountyName;
newCountyInfo.state = newCountyState;
newCountyInfo.zips = newCountyZips;
newCountyInfo.branchID = newCountyBranchID;
我在数组中有四个元素。然后我将newCountyInfo传递给另一个函数,以提取一些HTML元素中显示的元素

I知道如何获取使用它们的函数中的各个元素的唯一方法是:

JSON.parse(JSON.stringify(newCountyValidation)).name
JSON.parse(JSON.stringify(newCountyValidation)).state
... etc...
一定有更好/更短/更优雅的方法来做这件事

这是什么?

你为什么要连载?我不明白JSON与此有什么关系,除非您正在使用JSON或其他需要序列化的东西。首先:

然后将整个对象传递给另一个函数:

someOtherFunction(newCountyInfo);
可通过以下方式访问字段:

没有JSON。

为什么要序列化?我不明白JSON与此有什么关系,除非您正在使用JSON或其他需要序列化的东西。首先:

然后将整个对象传递给另一个函数:

someOtherFunction(newCountyInfo);
可通过以下方式访问字段:


没有任何JSON。

类似的东西应该可以正常工作:

var newCountyInfo = {
    name: newCountyName,
    state: newCountyState,
    zips: newCountyZips,
    branchID: newCountyBranchID
}

function test(newCountyValidation)
{
    alert(newCountyValidation.name);
}

test(newCountyInfo);

像这样的东西应该可以很好地工作:

var newCountyInfo = {
    name: newCountyName,
    state: newCountyState,
    zips: newCountyZips,
    branchID: newCountyBranchID
}

function test(newCountyValidation)
{
    alert(newCountyValidation.name);
}

test(newCountyInfo);

这不是一个“JSON数组”,而是一个普通的JavaScript对象。您确实应该了解什么是JSON(一种数据交换格式),以及
JSON.parse
JSON.stringify
正在做什么。然后,您会注意到这样调用它们是不必要的。如果您将对象传递给PHP或使用它创建跨域api(jsonP),则只需要使用json。因为你没有做这两件事,所以使用一个普通的对象文字
{}
就是这样做的。这不是一个“JSON数组”,这是一个普通的JavaScript对象。您确实应该了解什么是JSON(一种数据交换格式),以及
JSON.parse
JSON.stringify
正在做什么。然后,您会注意到这样调用它们是不必要的。如果您将对象传递给PHP或使用它创建跨域api(jsonP),则只需要使用json。既然你没有做这两件事,那么使用一个普通的object literal
{}
将是一种方法。我必须知道,你为什么要这样通过JSON来处理这个对象?是什么让您认为这是正确的方法?很明显,我没有过多地处理数组,除了从PHP/MySQL返回到$.ajax调用获取数据数组之外。在这种情况下,我使用JSON数组。我假设这只是Javascript中处理数组的一种方法。现在我知道不同了…@Mathletics我猜OP是(ab)像PHP一样使用这个术语,模糊了对象和数组之间的界限。@eventide与PHP不同,JS数组与JS对象明显不同。我建议你尽快处理此事。我必须知道,你为什么要这样通过JSON来处理对象?是什么让您认为这是正确的方法?很明显,我没有过多地处理数组,除了从PHP/MySQL返回到$.ajax调用获取数据数组之外。在这种情况下,我使用JSON数组。我假设这只是Javascript中处理数组的一种方法。现在我知道不同了…@Mathletics我猜OP是(ab)像PHP一样使用这个术语,模糊了对象和数组之间的界限。@eventide与PHP不同,JS数组与JS对象明显不同。我建议你尽快处理此事。和