Javascript 基于另一个值打印一个值的对象
我想要Javascript 基于另一个值打印一个值的对象,javascript,arrays,object,console.log,Javascript,Arrays,Object,Console.log,我想要console.log一个基于另一个特定值的对象数组中的值。例如,我有一个简单的对象数组。对于v:1的所有对象,我要打印z值 var array = [ {v:1, z: 4}, {v:3, z: 8}, {v:4, z: 6}, {v:1, z: 4}, {v:2, z: 9}, {v:2, z: 3}, {v:4, z: 7}, {v:1, z: 5}, ]; 我尝试了类似(array.v(1)=>{consol
console.log
一个基于另一个特定值的对象数组中的值。例如,我有一个简单的对象数组。对于v:1的所有对象,我要打印z值
var array = [
{v:1, z: 4},
{v:3, z: 8},
{v:4, z: 6},
{v:1, z: 4},
{v:2, z: 9},
{v:2, z: 3},
{v:4, z: 7},
{v:1, z: 5},
];
我尝试了类似(array.v(1)=>{console.log(array.z);})的
代码>但语法不正确。这里的正确语法是什么?请尝试以下内容:
array.forEach( function(a) { if ( a.v == 1 ) console.log(a.z); } );
试着这样做:
array.forEach( function(a) { if ( a.v == 1 ) console.log(a.z); } );
您需要在for-each循环中添加if语句
您还可以使用过滤器功能,但这将打印符合过滤器要求的对象,而不仅仅是z值
var数组=[
{v:1,z:4},
{v:3,z:8},
{v:4,z:6},
{v:1,z:4},
{v:2,z:9},
{v:2,z:3},
{v:4,z:7},
{v:1,z:5},
];
console.log('For Each')
array.forEach(o=>{if(o.v==1)console.log(o.z)})
console.log('Filter')
log(JSON.stringify(array.filter(o=>o.v==1))
您需要在for-each循环中添加if语句
您还可以使用过滤器功能,但这将打印符合过滤器要求的对象,而不仅仅是z值
var数组=[
{v:1,z:4},
{v:3,z:8},
{v:4,z:6},
{v:1,z:4},
{v:2,z:9},
{v:2,z:3},
{v:4,z:7},
{v:1,z:5},
];
console.log('For Each')
array.forEach(o=>{if(o.v==1)console.log(o.z)})
console.log('Filter')
log(JSON.stringify(array.filter(o=>o.v==1)))
array.filter(o=>o.v==1).forEach(o=>console.log(o.z))
array.filter(o=>o.v==1.forEach(o=>console.log(o.z))代码>这两种解决方案都能完美工作。我第一个去是因为简单。在这种情况下不需要严格限制。这两种解决方案都能完美地工作。我第一个去是因为简单。在这种情况下不需要严格限制。