Global o‘zgaruvchilar


ULASHISH

Global o‘zgaruvchilar

Funksiyadan tashqarida yaratilgan o‘zgaruvchilar global o‘zgaruvchilar deb ataladi.

Global o‘zgaruvchilardan hamma joyda — funksiyalar ichida ham, tashqarisida ham foydalanish mumkin.

Misol

Funksiyadan tashqarida o‘zgaruvchi yarating va undan funksiya ichida foydalaning:

txt <- "awesome" my_function <- function() {   paste("R is", txt) } my_function()
O‘zingiz sinab ko‘ring »

Agar funksiya ichida xuddi shu nomli o‘zgaruvchi yaratsangiz, bu o‘zgaruvchi lokal bo‘ladi va undan faqat funksiya ichida foydalanish mumkin. Xuddi shu nomli global o‘zgaruvchi esa avvalgidek — global va dastlabki qiymati bilan qoladi.

Misol

Funksiya ichida global o‘zgaruvchi bilan bir xil nomli o‘zgaruvchi yarating:

txt <- "global variable" my_function <- function() {   txt = "fantastic"   paste("R is", txt) } my_function() txt # print txt
O‘zingiz sinab ko‘ring »

Agar txt o‘zgaruvchisini chiqarishga harakat qilsangiz, u "global variable" qiymatini qaytaradi, chunki biz txt o‘zgaruvchisini funksiyadan tashqarida chiqaryapmiz.



Global qiymat berish operatori

Odatda funksiya ichida o‘zgaruvchi yaratsangiz, u lokal bo‘ladi va undan faqat shu funksiya ichida foydalanish mumkin.

Funksiya ichida global o‘zgaruvchi yaratish uchun global qiymat berish operatoridan foydalanishingiz mumkin: <<-

Misol

Agar <<- qiymat berish operatoridan foydalansangiz, o‘zgaruvchi global ko‘rinish sohasiga (scope) tegishli bo‘ladi:

my_function <- function() { txt <<- "fantastic"   paste("R is", txt) } my_function() print(txt)
O‘zingiz sinab ko‘ring »

Shuningdek, funksiya ichida global o‘zgaruvchini o‘zgartirmoqchi bo‘lsangiz, global qiymat berish operatoridan foydalaning:

Misol

Funksiya ichida global o‘zgaruvchining qiymatini o‘zgartirish uchun o‘zgaruvchiga global qiymat berish operatori <<- orqali murojaat qiling:

txt <- "awesome" my_function <- function() {   txt <<- "fantastic"   paste("R is", txt) } my_function() paste("R is", txt)
O‘zingiz sinab ko‘ring »

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!