2017-02-08 5 views
7

क्या कोई बता सकता है कि "कोणीय से परिचय" उदाहरण में नीचे दिए गए कोड में "..." क्या है?"foo (... arg)" (फ़ंक्शन कॉल में तीन बिंदु) का अर्थ क्या है?

getHeroes() { 
    this.backend.getAll(Hero).then((heroes: Hero[]) => { 
     this.logger.log(`Fetched ${heroes.length} heroes.`); 
     this.heroes.push(...heroes); // fill cache 
    }); 
+1

https:: //developer.mozilla

this.heroes.push.apply(this.heroes, Array.from(heroes)); 

अधिक संक्षिप्त होने के अलावा, ... यहाँ का एक और लाभ यह है कि इसे और अधिक आसानी से अन्य ठोस तर्क के साथ इस्तेमाल किया जा सकता है। org/nl/docs/वेब/जावास्क्रिप्ट/संदर्भ/ऑपरेटरों/Spread_operator – Shilly

उत्तर

9

इसका jQuery या कोणीय से कोई लेना देना नहीं है। यह एक सुविधा है जिसे ES2015 में पेश किया गया था।

...doesn't actually have an official name का यह विशेष उपयोग। एक नाम जो अन्य उपयोगों के अनुरूप है, "फैल तर्क" होगा (एक सामान्य शब्द "spread syntax" होगा)। यह इट्रेबल पर "विस्फोट" (फैलता है) और प्रत्येक मान को फ़ंक्शन के लिए तर्क के रूप में पास करता है। आपका उदाहरण के बराबर है:

func(first, second, ...theRest); 

// as opposed to the following or something similar: 
func.apply(null, [first, second].concat(Array.from(heroes))); 
संबंधित मुद्दे