2013-09-25 8 views
7

अंडरस्कोर का काम कैसे छोड़ता है। मैं नीचे कुंजी 1 और 2 के साथ गुणों को हटाने की उम्मीद कर रहा था। लेकिन यह नहीं है।अंडरस्कोर का उपयोग कैसे करें

http://jsfiddle.net/FMaDq/1/

var test = { 
    1: [], 
    2: [], 
    3: [], 
    4: [] 
} 

var out = _.omit(test, [1,2]) 
var out2 = _.omit(test, 1,2) 
console.log(out) 
console.log(out2) 

Object {1: Array[0], 2: Array[0], 3: Array[0], 4: Array[0]} 
Object {1: Array[0], 2: Array[0], 3: Array[0], 4: Array[0]} 

उत्तर

10

_omit कॉल _contains जो कोड की इस पंक्ति में शामिल हैं: तो आप करने के लिए (के बाद से "1" === 1 गलत है) की तुलना करने में तार उत्तीर्ण करने की आवश्यकता

return value === target; 

चाबियाँ, तार हो जाएगा।

_.omit(test, "1", "2") 
2

मैं कुंजी की जरूरत है लगता है कि स्ट्रिंग किया जाना है। यह काम किया। http://jsfiddle.net/FMaDq/2/

var out = _.omit(test, ['1','2']) 
संबंधित मुद्दे