Why is “forEach not a function” for this object?

后端 未结 3 1587
梦毁少年i
梦毁少年i 2020-12-13 05:58

This is probably something really dumb, but I don\'t understand why this doesn\'t work.

var a = {\"cat\":\"large\"};

a.forEach(function(value, key, map){
           


        
3条回答
  •  轮回少年
    2020-12-13 06:34

    When I tried to access the result from

    Object.keys(a).forEach(function (key){ console.log(a[key]); });

    it was plain text result with no key-value pairs Here is an example

    var fruits = {
        apple: "fruits/apple.png",
        banana: "fruits/banana.png",
        watermelon: "watermelon.jpg",
        grapes: "grapes.png",
        orange: "orange.jpg"
    }
    

    Now i want to get all links in a separated array , but with this code

        function linksOfPics(obJect){
    Object.keys(obJect).forEach(function(x){
        console.log('\"'+obJect[x]+'\"');
    });
    }
    

    the result of :

    linksOfPics(fruits)
    
    
    
    "fruits/apple.png"
     "fruits/banana.png"
     "watermelon.jpg"
     "grapes.png"
     "orange.jpg"
    undefined
    

    I figured out this one which solves what I'm looking for

      console.log(Object.values(fruits));
    ["fruits/apple.png", "fruits/banana.png", "watermelon.jpg", "grapes.png", "orange.jpg"]
    

提交回复
热议问题