javascript each-自动检测中val的名称(键,val)
我有一个JSON文件,它的名称-值对比我想要输入的多。要么懒惰,要么优雅。我不必使用下面的方法输入所有名称-值对,而是必须有一个类似val.name的val属性,这样就不必输入所有其他对。搜索答案的合适术语是什么?或者代码也很好:) 这是我开始使用的,当时我想,“该死,我必须把所有的*#&@美元都打出来!” JSONjavascript each-自动检测中val的名称(键,val),javascript,jquery,each,Javascript,Jquery,Each,我有一个JSON文件,它的名称-值对比我想要输入的多。要么懒惰,要么优雅。我不必使用下面的方法输入所有名称-值对,而是必须有一个类似val.name的val属性,这样就不必输入所有其他对。搜索答案的合适术语是什么?或者代码也很好:) 这是我开始使用的,当时我想,“该死,我必须把所有的*#&@美元都打出来!” JSON 如果我正确理解你的问题,只需在中为..使用 for (field in val){ // something with val[field] } 如果我正确理解你的问题,只
如果我正确理解你的问题,只需在中为..使用
for (field in val){
// something with val[field]
}
如果我正确理解你的问题,只需在
中为..使用
for (field in val){
// something with val[field]
}
看起来你只是在做字符串连接。如果是的话
$.each(data, function(key, val) {
items.push(key + $.map(val, String).join('') );
});
演示:
或者,如果您正在构建一个新阵列,您可以这样做
var items = $.map(data, function(val, key) {
return key + $.map(val, String).join('');
});
演示:看起来您只是在进行字符串连接。如果是的话
$.each(data, function(key, val) {
items.push(key + $.map(val, String).join('') );
});
演示:
或者,如果您正在构建一个新阵列,您可以这样做
var items = $.map(data, function(val, key) {
return key + $.map(val, String).join('');
});
演示:你有什么问题?数据上的迭代还是val上的迭代?嗯?您的代码示例已经在数据
对象上进行了迭代,那么为什么您不能对val
执行相同的操作呢?我想将对象的所有属性都推送到对象中,而不必键入val.TimeStamp、val.BandWidth等。这似乎是从JSON数组(数据)填充对象的漫长过程@nnnnnn是有意义的,因此我可以在items.push()中使用和每个语句?也许您应该从有效的JSON开始?您的问题是什么?数据上的迭代还是val上的迭代?嗯?您的代码示例已经在数据
对象上进行了迭代,那么为什么您不能对val
执行相同的操作呢?我想将对象的所有属性都推送到对象中,而不必键入val.TimeStamp、val.BandWidth等。这似乎是从JSON数组(数据)填充对象的漫长过程@nnnnnn是有意义的,因此我可以在items.push()中使用和每个语句?也许您应该从有效的JSON开始?我试图通过使用alert(items.join('\n'))验证JSON中的所有列;但只能看到第一组值。是否有更好的方法将数组的内容打印到控制台以验证输入的内容?浏览器的控制台应该准确地显示您得到的内容。数据
嵌套的深度是否超过一个级别?您能在问题中显示您的数据结构吗?@rd42:您的JSON不是有效的结构。[]
不合适,看起来好像应该将其删除。另外,我不确定您的输出应该是什么样子。将所有值连接成一个字符串似乎有点奇怪。是的,我刚刚注意到了这一点。我想可能是我问错了问题,或者是我的JSON设置错了,或者两者都错了。也许我早就问过我的问题。我试图通过使用alert(items.join('\n'))来验证json中的所有列;但只能看到第一组值。是否有更好的方法将数组的内容打印到控制台以验证输入的内容?浏览器的控制台应该准确地显示您得到的内容。数据
嵌套的深度是否超过一个级别?您能在问题中显示您的数据结构吗?@rd42:您的JSON不是有效的结构。[]
不合适,看起来好像应该将其删除。另外,我不确定您的输出应该是什么样子。将所有值连接成一个字符串似乎有点奇怪。是的,我刚刚注意到了这一点。我想可能是我问错了问题,或者是我的JSON设置错了,或者两者都错了。也许我早就问过我的问题了。