Каков тип данных для этой коллекции и как получить доступ к ее значениям? - PullRequest
1 голос
/ 24 мая 2019

У меня есть объявление в коде, который я получил для программирования логики.Я уже выяснил свой алгоритм, но я не могу понять, что это за тип данных.Я в основном должен сравнивать значения «навыков» каждой строки с «JavaScript», и если это правда, мне нужно выполнить задачу.Я не могу получить доступ к значению навыков.Какой тип данных это объявление и как я могу получить доступ к его значениям?

Я пытался получить доступ к значениям, используя строку / столбец типа таблицы, а также используя массивы, но ничего не работает.Для добавления / удаления строк в эту таблицу,

const newCandidates = [
 { name: "Kerrie", skills: ["JavaScript", "Docker", "Ruby"] },
 { name: "Mario", skills: ["Python", "AWS"] }
 ];

Ответы [ 3 ]

0 голосов
/ 24 мая 2019

Это массив в javascript. Хотя массивы javascript - это не что иное, как объекты.

const newCandidates = [
     { name: "Kerrie", skills: ["JavaScript", "Docker", "Ruby"] },
     { name: "Mario", skills: ["Python", "AWS"] }
    ];
    console.log("DataType of newCandidates: ", typeof newCandidates); // prints object type


// accessing skills array in newCandidates

for(var i = 0; i < newCandidates.length; i++) {
	let person = newCandidates[i];
	console.log("personName: ", person["name"]);
	// since skills is array, iterate through it.
	for(var j = 0; j < person["skills"].length; j++) {
		let currentSkill = person["skills"][j];
		// do something with currentSkill
		console.log("Skill-" + j + " : " + currentSkill);
	}
}
0 голосов
/ 24 мая 2019

У вас есть массив объектов Javascript (все в фигурных скобках). Выполните цикл forEach для массива:

newCandidates.forEach(e => console.log(e.skills))

Это даст вам набор навыков. Вы можете использовать дополнительные методы массива, чтобы проверить, содержат ли навыки "Javascript"

newCandidates.forEach(candidate => {
  if(candidate.skills.includes("Javascript") {
    *execute your function*
  }
}
0 голосов
/ 24 мая 2019

У вас есть массив словарей.Вы можете получить доступ к его элементам, как это:

const newCandidates = [{
    name: "Kerrie",
    skills: ["JavaScript", "Docker", "Ruby"]
  },
  {
    name: "Mario",
    skills: ["Python", "AWS"]
  }
];

console.log(newCandidates[0].skills[1])
console.log(newCandidates[1].name)
...