如何在javascript中将数组键和值对中的值分配给另一个数组?

时间:2018-07-18 19:00:38

标签: javascript join array-splice

 var c =(
        ['lkg','lkg_stud_name'],
        ['ukg','ukg_stud_name']
    );

我想在下面这样吗?

a[0]

例如,b[0]a[1]在同一行中,b[1]c在数组import uuid from django.core.validators import (EmailValidator, MaxLengthValidator, MaxValueValidator, MinLengthValidator, MinValueValidator,) from django.db import models from django.utils import timezone from .validators import (validar_cep, validar_ddd, validar_numero_telefone, validar_uf,) class Endereco(ModeloComum): bairro = models.CharField(max_length=255) cep = models.CharField( error_messages={ 'max_length': 'CEP inválido. O CEP deve conter uma entrada com 8 ' 'digitos numéricos.', }, max_length=8, validators=[validar_cep], ) cidade = models.CharField(max_length=255) complemento = models.CharField(blank=True, max_length=32, null=True,) logradouro = models.CharField(max_length=255) numero = models.PositiveIntegerField( error_messages={ 'invalid': 'Insira um número válido. A entrada "%(value)s" não é ' 'um valor inteiro positivo.', } ) pessoa = models.ForeignKey( 'Pessoa', models.PROTECT, related_name='enderecos', related_query_name='endereco', ) uf = models.CharField( error_messages={ 'max_length': 'UF inválido. UF deve conter somente 2 caracteres ' 'em letras maiúsculas', }, max_length=2, validators=[validar_uf], ) class Meta: ordering = ('uf', 'cidade', 'bairro', 'cep', 'numero', ) verbose_name = 'Endereco' verbose_name_plural = 'Enderecos' def __str__(self): return '[%s - %s, %s/%s]' % ( self.cep, self.bairro, self.cidade, self.uf ) class SeguroAuto(ModeloComum): cep_pernoite = models.CharField( error_messages={ 'max_length': 'CEP inválido. O CEP deve conter uma entrada com 8 ' 'digitos numéricos.', }, max_length=8, validators=[validar_cep], ) cep_maior_frequencia = models.CharField( error_messages={ 'max_length': 'CEP inválido. O CEP deve conter uma entrada com 8 ' 'digitos numéricos.', }, max_length=8, validators=[validar_cep], ) quilometragem_media = models.CharField( choices=QUILOMETRAGEM_MEDIA, default='Até 500 km/mês', error_messages={ 'invalid_choice': 'Selecione uma opção válida. "%(value)s" não é ' 'uma das opções disponíveis.' }, max_length=14, ) class Meta: ordering = ('segurado', 'uuid', ) verbose_name = 'SeguroAuto' verbose_name_plural = 'SegurosAuto' def __str__(self): try: return '[%s - %s | %s]' % ( self.segurado.pessoa.nome, self.segurado.pessoa.cpf, self.uuid ) except Exception: return '[%s]' % (self.uuid) 中的同一行中。

请帮助我

2 个答案:

答案 0 :(得分:2)

您可以通过mapping通过一个数组的值(假设它们的长度相同)来相当容易地做到这一点:

var a = ['lkg','ukg'];
var b = ['lkg_stud_name','ukg_stud_name'];

var c = a.map((item, index) => [item, b[index]])
console.log(c)

答案 1 :(得分:0)

一种替代方法是使用函数Array.from

这是假设两个数组的长度相同。

var a = ['lkg','ukg'],
    b = ['lkg_stud_name','ukg_stud_name'],
    c = Array.from({length: a.length}, (_, i) => [a[i], b[i]]);

console.log(c);
.as-console-wrapper { max-height: 100% !important; top: 0; }

使用for-loop的广泛兼容方法:

var a = ['lkg','ukg'],
    b = ['lkg_stud_name','ukg_stud_name'],
    c = [];
    
for (var i = 0; i < a.length; i++) c.push([a[i], b[i]]);

console.log(c);
.as-console-wrapper { max-height: 100% !important; top: 0; }