我在一个VueJS实例中有两个数组。这些阵列显示学生可以在学校参加的课程。首先是用户参加的课程,其次是有学生参加的所有课程。
数组看起来像这样:
let mainVue = new Vue({
el: '#mainContent',
data: {
myCourses: [{Course: "A"}, {Course: "B"}],
allCourses: [{Course: "A"}, {Course: "B"}, {Course: "C"}, {Course: "A"}]
}
这两个数组都由从用户输入填充的数据组成,因此它们会随时间而变化。第一个数组是用户特定的内容(用户参加的课程),第二个数组是有人参加的所有课程的数组。
我想检查与用户参加相同课程的人数。在这种情况下,我想检查数组myCourses(课程a和b)中有多少在数组allCourses中。
换句话说,我想检查数组“myCourse”中有多少次出现在数组“allCourses”中。
您想要过滤在“我的课程”中出现的所有课程
allCourses.filter(course => {
return myCourses.find(m => {
return m.Course === course.Course
})
}).length
可能是一个计算的
道具适合您(检查id/课程名称交叉点)
const mainVue = new Vue({
el: '#mainContent',
data: {
myCourses: [{Course: "A"}, {Course: "B"}],
allCourses: [{Course: "A"}, {Course: "B"}, {Course: "C"}, {Course: "A"}],
},
computed: {
allCoursesCounts() {
return this.allCourses.reduce((acc, { Course }) => {
acc[Course] = (acc[Course] || 0) + 1
return acc
}, {})
},
subscribedTo() {
const allCoursesCounts = this.allCoursesCounts
return this.myCourses.map(({ Course }) => ({
courseName: Course,
amountOfUsers: allCoursesCounts[Course] || 0,
}))
}
}
});
<div id="mainContent">
<div v-for="({ courseName, amountOfUsers }) of subscribedTo" :key='courseName'>
<span>Course {{ courseName }} - {{ amountOfUsers }}</span>
</div>
</div>
问题内容: 我想为数组中的每个值返回一个布尔值,指示它是否在array中。我猜这应该是一个标准程序,但是我找不到有关如何执行此操作的任何信息。我的尝试如下: 但是,我得到了错误: 我使用的是numpy,因此首选使用numpy或标准Python的解决方案。 问题答案: 我相信您可以使用-
我需要检查一个arraylist中的任何值是否存在于另一个arraylist中: 它打印“它不包含”。我需要知道是否有方法比较这两个arraylist,如果其他arraylist中存在任何值,它应该返回。我知道迭代可以有所帮助。有什么简单的方法可以做到这一点吗?
问题内容: 我在PHP中有两个数组,如下所示: 人: 通缉犯: 如何检查是否 所有 的的 人们 元素是在 通缉犯 阵列? 在此示例中,它应该返回,因为在 通缉犯中 。 问题答案: 您可以使用。
问题内容: 我有两个数组,我想检查是否每个元素都在中。如果元素的值在中重复,则该元素的值必须相等。最好的方法是什么? 问题答案: 一种选择是对两个数组进行排序,然后遍历两个数组,然后比较元素。如果在超级袋中未找到子袋候选中的元素,则前者不是子袋。排序通常为O(n *log(n)),比较为O(max(s,t)),其中 s 和_t_是数组大小,总时间复杂度为O(m * log(m)) ,其中m =ma
问题内容: 我有2个数据框。 我想遍历每行,并检查每个名称是否在中。 如果名称在其中,结果应返回1,否则返回0: 谢谢。 问题答案: 采用 在数据框中显示结果 在系列对象中
问题内容: 我想找出$ all是否包含所有$ search_this值并返回true或false。有什么想法吗? 问题答案: 看一下array_intersect()。