J'ai un tableau avec nom ValidationValuesValues afin que l'utilisateur clique sur l'état d'entrée, c'est-à-dire. ValidationIDValue prend la valeur de la boîte d'entrée individuelle. Maintenant, un utilisateur Sélectionnez l'option sur oui ou non, la fonction crée un nom d'obj avec nom de clé égale à l'état, validationidvalue et valeur égale à la sélection des utilisateurs en bref crée un obj tel que celui-ci var validationValueIdValues = [] //as global variable
if (this.state.selectedOption === "YES") {
const attribute = {};
attribute[this.state.validationIdValue] = "YES";
if (validationValueIdValues.length > 0) {
validationValueIdValues.forEach((data, index) => {
if (Object.keys(data) == this.state.validationIdValue) {
validationValueIdValues.splice(index, 1);
validationValueIdValues.push(attribute);
}
});
} else {
validationValueIdValues.push(attribute);
}
}
5 Réponses :
'in' peut être utilisé pour vérifier la clé dans le tableau
// if key not in array then add to array
if ( !( 'mydata' in myArray) ) {
myArray['mydata'] = 99;
}
Le tableau est une matrimonie d'objets de ce que j'ai compris. Il aura des index 0,1,2 (les clés seront 0,1,2)
De plus, in 'est utilisé pour vérifier si une clé donnée est présente à l'intérieur de l'objet. développeur.mozilla.org/en-us/docs/ Web / JavaScript / Référence / ...
En effet c'est un tableau d'objet @ssarbee
Vous devrez vérifier toutes les touches de la matrice pour trouver la valeur correspondante. Vous n'avez pas besoin du code pour être répété pour "oui" ou "non" comme vous l'avez mentionné. Quelque chose comme ça est assez générique pour le gérer
Utilisez .Findindex () A> avec .Some () a > Pour voir si la valeur existe dans le tableau, si vous n'existe pas à jour la valeur ou appuyez sur la nouvelle valeur. p> const array = [{'08765d0f-2e7a-4fbd-9282-c38f5ddf8d8b': "YES"}, {'tyhgsgsvbb': 'NO'}];
const found = array.findIndex((item) => Object.keys(item).some(key => key === 'tyhgsgsvbb'));
if (found) {
// toggle the value from yes to no, or vice versa
array[found] = array[found] === 'YES' ? 'NO' : 'YES'
} else {
array.push({newKey: 'newValue'});
}
console.log(array)
const newObject = {'08765d0f-2e7a-4fbd-9282-c38f5ddf8d8b': "NO"}
const array = [{'08765d0f-2e7a-4fbd-9282-c38f5ddf8d8b': "YES"}, {'tyhgsgsvbb': 'NO'}];
const items = array.filter(item => item['08765d0f-2e7a-4fbd-9282-c38f5ddf8d8b'])
if(allKeys.length>0) array[array.findIndex(items[0])] = newObject
else array[array.length] = newObject
Vous pouvez essayer cela!
const array=[{'08765d0f-2e7a-4fbd-9282-c38f5ddf8d8b': "YES"},{'08754d0f-2e7a-4fbd-9282-c38f5ddf8d8b': "YES"}];
let newValue = {'08765d0f-2e7a-4fbd-9282-c38f5ddf8d8b': "YES"};
const index = array.findIndex(e=>Object.keys(e).indexOf(Object.keys(newValue)[0])>-1);
if(index > -1){
array.splice(index,1,newValue); //Replacing the value
} else {
array.push(newValue);
}
Qu'essayez-vous de faire. Pouvez-vous partager le code et l'exigence?
Le nombre d'identifiant de validation est corrigé? ou est-ce généré de manière dynamique?
Il est généré dynamiquement @vaibhavsingh
J'utilise des joints joints dans lesquels les entrées sont générées de manière dynamique selon les utilisateurs de chaque entrée dispose de sa propre pièce d'identité que la constante de Ramin est désormais désormais possible lorsque l'utilisateur sélectionne cette entrée, je souhaite stocker l'ID d'entrée avec la valeur des utilisateurs entrées dans un tableau @ Vahidakhtar