JavaScript Example (Program)
Learn Details

Symbol.iterator


iterator का use array , string , object के एक या एक से अधिक value को access करने के लिए किया जाता है

Note :- iterator का use हमेसा symbol data के साथ किया जाता है।

Q. What is the benfit of Symbol.itertor ?

चुकी हमलोग जानते हैं की array , string , object के value कुछ loop ( जैसे की for , for in , for of ) loop का use करके सभी value का access कर सकते हैं लकिन जब हमें इसके किसी specfic singale value को access करना हो तो हम इसे access नहीं कर सकते हैं।

जबकि iterator का use करके इन सबके (array , string , object ) सभी value या specfic singale value को भी access कर सकते हैं

Syntax 1: for create Symbol.iterator:

ArrayName[symboll.iterator]()


Syntax 2: for access iterator:

ArrayName.next()

Example 1 : Symboll.iterator (Mix)



<script>     
           let basket = ["Apple", "mango", "Guava"];
            for(let x of basket){
                console.log(x)
            }
            console.log(basket);
            //1. create Symbol iteralor
            console.log(Symbol.iterator);
            console.log(typeof Symbol.iterator);

            //2. use symbol iterator with array
            console.log(basket[Symbol.iterator])
            console.log(typeof basket[Symbol.iterator])

            //3. convert iterator object
            console.log(basket[Symbol.iterator]())
            console.log(typeof basket[Symbol.iterator]())


            //4. Access Array value by array iteraor
              let myitr = basket[Symbol.iterator]();           
              console.log(myitr.next().value)
              console.log(myitr.next().value)
              console.log(myitr.next().value)
</script>
 

Example 2 : Symboll.iterator create and access



<script>
     let basket = ["Apple", "mango", "Guava"];  
      let myitr = basket[Symbol.iterator]();           
      console.log(myitr.next().value)
      console.log(myitr.next().value)
      console.log(myitr.next().value)
</script>
 

Example 3 : Symboll.iterator with loop



<script>
    let basket = ["Apple", "mango", "Guava"];   
    for(let x of myitr){
                console.log(x)
    }
</script>