Aracılığıyla paylaş


Bicep spread işleci

Spread işleci, yinelenebilir bir diziyi veya nesneyi tek tek öğelere genişletmek için kullanılır. Spread işleci, öğelerini veya özelliklerini yeni dizilere veya nesnelere yayarak dizileri veya nesneleri kolayca işlemenizi sağlar.

Spread

...

Spread işleci, özellikleri bir nesneden diğerine kopyalamak veya dizileri ve nesneleri kısa ve okunabilir bir şekilde birleştirmek için kullanılır.

Örnekler

Aşağıdaki örnekte bir nesnede kullanılan spread işleci gösterilmektedir:

var objA = { bar: 'bar' }
output objB object = { foo: 'foo', ...objA } 

Örnekten çıktı:

Adı Tür Değer
objB nesne { foo: 'foo', çubuk: 'bar' }

Aşağıdaki örnekte bir dizide kullanılan spread işleci gösterilmektedir:

var arrA = [ 2, 3 ]
output arrB array = [ 1, ...arrA, 4 ] 

Örnekten çıktı:

Adı Tür Değer
arrB dizi [ 1, 2, 3, 4 ]

Aşağıdaki örnek, tek bir işlemde birden çok kez kullanılan yayılmayı gösterir:

var arrA = [ 2, 3 ]
output arrC array = [ 1, ...arrA, 4, ...arrA ] 

Örnekten çıktı:

Adı Tür Değer
arrC dizi [ 1, 2, 3, 4, 2, 3 ]

Aşağıdaki örnek, çok satırlı bir işlemde kullanılan yayılmayı gösterir:

var objA = { foo: 'foo' }
var objB = { bar: 'bar' }
output combined object = { 
  ...objA
  ...objB
} 

Bu kullanımda, iki satır arasında virgül kullanılmaz. Örnekten çıktı:

Adı Tür Değer
combined nesne { foo: 'foo', çubuk: 'bar' }

Yayma işlemi, isteğe bağlı bir özelliğin ayarlanmasını önlemek için kullanılabilir. Örneğin:

param vmImageResourceId string = ''

var bar = vmImageResourceId != '' ? {
  id: vmImageResourceId
} : {}

output foo object = {
  ...bar
  alwaysSet: 'value'
}

Örnekten çıktı:

Adı Tür Değer
foo nesne {"alwaysSet":"value"}

Yukarıdaki örnek şu şekilde de yazılabilir:

param vmImageResourceId string = ''

output foo object = {
  ...(vmImageResourceId != '' ? {
    id: vmImageResourceId
  } : {})
  alwaysSet: 'value'
}

Sonraki adımlar