github.com/chainreactors/fingers@v1.2.1/nmap/type-probelist.go (about) 1 package gonmap 2 3 type ProbeList []string 4 5 var emptyProbeList []string 6 7 func (p ProbeList) removeDuplicate() ProbeList { 8 result := make([]string, 0, len(p)) 9 temp := map[string]struct{}{} 10 for _, item := range p { 11 if _, ok := temp[item]; !ok { //如果字典中找不到元素,ok=false,!ok为true,就往切片中append元素。 12 temp[item] = struct{}{} 13 result = append(result, item) 14 } 15 } 16 return result 17 } 18 19 func (p ProbeList) exist(probeName string) bool { 20 for _, name := range p { 21 if name == probeName { 22 return true 23 } 24 } 25 return false 26 }