我想我的基於給定的值的列表上的鍵..如何從值列表中獲取密鑰?
這裏我所期待的,
這是我的目標,
my_obj = {
"A": "a_id",
"B": "b_id",
"C": "c_id",
"D": "d_id",
"E": "status",
"F": "start_time",
"G": "end_time",
"H": "count",
"I": "task_desc",
"J": "approved",
"K": "point",
"L": "complex",
"M": "c_date",
"N": "final_date"
}
my_val = ['c_date', 'final_date', 'my_due_date', 'start_date']
所以,從上面的my_val
我想要得到的,["M", "N"]
我試圖下劃線invert
扭轉我的對象來獲取......一切都很好,除了返回鍵,而不是值..
這裏是我的嘗試,
my_obj = {
"A": "a_id",
"B": "b_id",
"C": "c_id",
"D": "d_id",
"E": "status",
"F": "start_time",
"G": "end_time",
"H": "count",
"I": "task_desc",
"J": "approved",
"K": "point",
"L": "complex",
"M": "c_date",
"N": "final_date"
}
my_val = ['c_date', 'final_date', 'my_due_date', 'start_date']
out = _.filter(my_val, function(v) { return _.invert(my_obj)[v]})
console.log(out)
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
_.invert(my_obj)[v] - this gives me a `key` but inside filter didnt..
什麼是錯在我的代碼?如何得到它?
@Psidom你能解釋一下嗎?爲了深刻理解?順便說一句很好的答案謝謝 –