helperCreateIndexOf.js 549 B

12345678910111213141516171819202122232425
  1. var isArray = require('./isArray')
  2. var hasOwnProp = require('./hasOwnProp')
  3. function helperCreateIndexOf (name, callback) {
  4. return function (obj, val) {
  5. if (obj) {
  6. if (typeof obj === 'string' || isArray(obj)) {
  7. if (obj[name]) {
  8. return obj[name](val)
  9. }
  10. return callback(obj, val)
  11. }
  12. for (var key in obj) {
  13. if (hasOwnProp(obj, key)) {
  14. if (val === obj[key]) {
  15. return key
  16. }
  17. }
  18. }
  19. }
  20. return -1
  21. }
  22. }
  23. module.exports = helperCreateIndexOf