J'essaie d'expérimenter la déstructivation. Maintenant, j'ai une affaire que j'essaye de faire face à la déstructuration.
Par exemple, j'ai une contribution comme celle-ci:
let input = {latitude: "17.0009", longitude: "82.2108"}
Où latitude
et longitude
_ valeurs clés sont des chaînes, mais je veux les analyser dans un nombre pendant la déstructuration.
let input = {latitude: "17.0009", longitude: "82.2108"}
let {latitude,longitude} = input
console.log(typeof latitude,typeof longitude)
Je peux voir dans ( Babel Repl que cela prend une référence d'un objet, puis accédez à chaque touche. Donc, le code ci-dessus est le même que:
"use strict";
var arr = {
latitude: "17.0009",
longitude: "82.2108"
};
var latitude = arr.latitude,
longitude = arr.longitude;
Je veux faire quelque chose comme utiliser la syntaxe déstructurée elle-même.
"use strict";
var arr = {
latitude: "17.0009",
longitude: "82.2108"
};
var latitude = Number(arr.latitude),
longitude = Number(arr.longitude);
Je suis ouvert pour voir des hacks aussi.
Mise à jour
Je suis capable de venir avec un hack avec le ,
Opérateur:
let arr = {latitude: "17.0009", longitude: "82.2108"}
let {lat,lng} = ({latitude,longitude} = arr, ({lat:+latitude,lng:+longitude}))
console.log(typeof lat, typeof lng)
sur le côté Note: - Vous devez lire Réponse de Moritz Roessler C'est un hacky mais contient Bonnes connaissances et informations
Si cela ne vous dérange pas d'utiliser lodash
, vous pouvez essayer ceci:
import { mapValues } from 'lodash';
const input = {latitude: "17.0009", longitude: "82.2108"}
const {latitude, longitude} = mapValues(input, Number);