Tengo una hoja que enumera todas las ciudades de mis países con sus respectivos estados. Esta hoja se usará en un formulario, pero por supuesto no quiero que el usuario busque en una lista con todas las ciudades existentes. Por lo tanto, quiero filtrar según el estado.
Logging output too large. Truncating output. [[AC, Acrelândia], [AC, Assis Brasil], [AC, Brasiléia], [AC, Bujari], [AC, Capixaba], [AC, Cruzeiro do Sul], [AC, Epitaciolândia], [AC, Feijó], [AC, Jordão], [AC, Mâncio Lima], [AC, Manoel Urbano], [AC, Marechal Thaumaturgo], [AC, Plácido de Castro], [AC, Porto Walter], [AC, Rio Branco], [AC, Rodrigues Alves], [AC, Santa Rosa do Purus], [AC, Senador Guiomard], [AC, Sena Madureira], [AC, Tarauacá], [AC, Xapuri], [AC, Porto Acre], [AL, Água Branca], [AL, Anadia], [AL, Arapiraca], [AL, Atalaia], [AL, Barra de Santo Antônio], [AL, Barra de São Miguel], [AL, Batalha], [AL, Belém] (...)El primer elemento es el estado, quiero filtrar esta matriz de manera que solo obtenga valores con el mismo estado. Entonces, si el estado seleccionado es AC, resultaría en:
[[AC, Acrelândia], [AC, Assis Brasil], [AC, Brasiléia], [AC, Bujari], [AC, Capixaba], [AC, Cruzeiro do Sul], [AC, Epitaciolândia], [AC, Feijó], [AC, Jordão], [AC, Mâncio Lima], [AC, Manoel Urbano], [AC, Marechal Thaumaturgo],[AC, Plácido de Castro], [AC, Porto Walter], [AC, Rio Branco], [AC, Rodrigues Alves], [AC, Santa Rosa do Purus], [AC, Senador Guiomard], [AC, Sena Madureira], [AC, Tarauacá], [AC, Xapuri], [AC, Porto Acre], [AL, Água Branca], [AL, Anadia], [AL, Arapiraca], [AL, Atalaia], [AL, Barra de Santo Antônio], [AL, Barra de São Miguel], [AL, Batalha]Descripción
Simplemente puede usar Array.filter() para obtener todas las ciudades que se encuentran en un estado en particular. Simplemente codifiqué "AC" en el filtro, pero podría usar una variable. He mezclado las filas para mostrar que, de hecho, solo obtiene las ciudades en AC.
Guion
function test() { try { let data = [["AC", "Acrelândia"], ["AC", "Assis Brasil"], ["AC", "Brasiléia"], ["AC", "Bujari"], ["AC", "Capixaba"], ["AL", "Anadia"], ["AL", "Arapiraca"], ["AL", "Atalaia"], ["AL", "Barra de Santo Antônio"], ["AL", "Barra de São Miguel"], ["AC", "Manoel Urbano"], ["AC", "Marechal Thaumaturgo"], ["AC", "Plácido de Castro"], ["AC", "Porto Walter"], ["AC", "Rio Branco"], ["AC", "Rodrigues Alves"], ["AC", "Santa Rosa do Purus"], ["AC", "Senador Guiomard"], ["AC", "Sena Madureira"], ["AC", "Tarauacá"], ["AC", "Xapuri"], ["AC", "Porto Acre"], ["AL", "Água Branca"], ["AL", "Batalha"], ["AL", "Belém"], ["AC", "Cruzeiro do Sul"], ["AC", "Epitaciolândia"], ["AC", "Feijó"], ["AC", "Jordão"], ["AC", "Mâncio Lima"] ]; let ac = data.filter( row => row[0] === "AC" ); console.log(ac); } catch(err) { console.log(err); } }Consola.log
7:56:24 AM Notice Execution started 7:56:26 AM Info [ [ 'AC', 'Acrelândia' ], [ 'AC', 'Assis Brasil' ], [ 'AC', 'Brasiléia' ], [ 'AC', 'Bujari' ], [ 'AC', 'Capixaba' ], [ 'AC', 'Manoel Urbano' ], [ 'AC', 'Marechal Thaumaturgo' ], [ 'AC', 'Plácido de Castro' ], [ 'AC', 'Porto Walter' ], [ 'AC', 'Rio Branco' ], [ 'AC', 'Rodrigues Alves' ], [ 'AC', 'Santa Rosa do Purus' ], [ 'AC', 'Senador Guiomard' ], [ 'AC', 'Sena Madureira' ], [ 'AC', 'Tarauacá' ], [ 'AC', 'Xapuri' ], [ 'AC', 'Porto Acre' ], [ 'AC', 'Cruzeiro do Sul' ], [ 'AC', 'Epitaciolândia' ], [ 'AC', 'Feijó' ], [ 'AC', 'Jordão' ], [ 'AC', 'Mâncio Lima' ] ] 7:56:25 AM Notice Execution completedReferencia
function selectCitiesForState(state = "AC") { const stoc = [[],[]];//you type in the array with quotes Logger.log(stoc.filter(e => e[0] == state).map(r => r[1])); return stoc.filter(e => e[0] == state).map(r => r[1]); }