Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

เมธอด process.env() ใน Node.js

เมธอด process.env() ใช้สำหรับดึงออบเจ็กต์สภาพแวดล้อมของผู้ใช้ (user environment object) ออบเจ็กต์นี้จะมีข้อมูลทั้งหมดเกี่ยวกับสภาพแวดล้อมที่คำสั่งนี้กำลังถูกดำเนินการ

ไวยากรณ์

process.env()

พารามิเตอร์

เนื่องจากคืนค่าออบเจ็กต์สำหรับสภาพแวดล้อมผู้ใช้ จึงไม่ต้องการอินพุตจากผู้ใช้

ตัวอย่าง

สร้างไฟล์ชื่อ env.js และคัดลอกโค้ดด้านล่าง หลังจากสร้างไฟล์แล้ว ใช้คำสั่งต่อไปนี้เพื่อรันโค้ด:

node env.js

env.js

// โปรแกรม Node.js สาธิตการใช้ process.env
// นำเข้าโมดูล process
const process = require('process');
// แสดงออบเจ็กต์สภาพแวดล้อมของผู้ใช้
console.log(process.env);

ผลลัพธ์

admin@root:~/node/test$ node env.js
{ SHELL: '/bin/bash', SESSION_MANAGER: 'local/admin:@/tmp/.ICE-unix/2956,unix/admin:/tmp/.ICE-unix/2956', QT_ACCESSIBILITY: '1', COLORTERM: 'truecolor', XDG_CONFIG_DIRS: '/etc/xdg/xdg-ubuntu:/etc/xdg', XDG_MENU_PREFIX: 'gnome-', GNOME_DESKTOP_SESSION_ID: 'this-is-deprecated', LANGUAGE: 'en_IN:en', GNOME_SHELL_SESSION_MODE: 'ubuntu', SSH_AUTH_SOCK: '/run/user/1001/keyring/ssh', XMODIFIERS: '@im=ibus', DESKTOP_SESSION: 'ubuntu', SSH_AGENT_PID: '2912', GTK_MODULES: 'gail:atk-bridge', PWD: '/home/admin/test', LOGNAME: 'admin', XDG_SESSION_DESKTOP: 'ubuntu', XDG_SESSION_TYPE: 'x11', GPG_AGENT_INFO: '/run/user/1001/gnupg/S.gpg-agent:0:1', XAUTHORITY: '/run/user/1001/gdm/Xauthority', GJS_DEBUG_TOPICS: 'JS ERROR;JS LOG', WINDOWPATH: '2', HOME: '/home/admin', USERNAME: 'admin', IM_CONFIG_PHASE: '1', LANG: 'en_IN', LS_COLORS: 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', XDG_CURRENT_DESKTOP: 'ubuntu:GNOME', VTE_VERSION: '6003', GNOME_TERMINAL_SCREEN: '/org/gnome/Terminal/screen/82170ab9_b5b3_424d_b0ce_37a40eb4e264', INVOCATION_ID: '9f9745f4c0c546eaa78b2c84f6d7ae59', MANAGERPID: '2722', GJS_DEBUG_Output: 'stderr', LESSCLOSE: '/usr/bin/lesspipe %s %s', XDG_SESSION_CLASS: 'user', TERM: 'xterm-256color', LESSOPEN: '– /usr/bin/lesspipe %s', USER: 'admin', GNOME_TERMINAL_SERVICE: ':1.111', DISPLAY: ':0', SHLVL: '1', QT_IM_MODULE: 'ibus', XDG_RUNTIME_DIR: '/run/user/1001', JOURNAL_STREAM: '9:66796', XDG_DATA_DIRS: '/usr/share/ubuntu:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop', PATH: '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin', GDMSESSION: 'ubuntu', DBUS_SESSION_BUS_ADDRESS: 'unix:path=/run/user/1001/bus', _: '/usr/bin/node', OLDPWD: '/home/admin' }

ตัวอย่างเพิ่มเติม

ลองดูตัวอย่างอีกหนึ่งกรณี:

// โปรแกรม Node.js สาธิตการใช้ process.env
// นำเข้าโมดูล process
const process = require('process');
// แสดงออบเจ็กต์สำหรับ process.env
var no_env = 0;
// เรียกฟังก์ชัน process.env
var env = process.env;
// วนลูปผ่านข้อมูลที่คืนมา
for (var key in env) {
    // แสดงค่า
    console.log(key + ":\t\t\t" + env[key]);
    no_env++;
}
// แสดงจำนวนทั้งหมด
console.log("total no of values available = " + no_env);
// เข้าถึงฟิลด์ทีละตัว
console.log("operating system: " + env['OS']);
console.log("alluserprofile: " + env['ALLUSERSPROFILE']);
console.log("public directory: " + env['PUBLIC']);

ผลลัพธ์

admin@root:~/node/test$ node env.js
SHELL:          /bin/bash
SESSION_MANAGER:        local/admin:@/tmp/.ICEunix/2956,unix/admin:/tmp/.ICE-unix/2956
QT_ACCESSIBILITY:       1
COLORTERM:              truecolor
XDG_CONFIG_DIRS:        /etc/xdg/xdg-ubuntu:/etc/xdg
XDG_MENU_PREFIX:        gnomeGNOME_DESKTOP_SESSION_ID: this-is-deprecated
LANGUAGE:               en_IN:en
GNOME_SHELL_SESSION_MODE: ubuntu
SSH_AUTH_SOCK:          /run/user/1001/keyring/ssh
XMODIFIERS:             @im=ibus
DESKTOP_SESSION:        ubuntu
SSH_AGENT_PID:          2912
GTK_MODULES:            gail:atk-bridge
PWD:                    /home/admin/test
LOGNAME:                admin
XDG_SESSION_DESKTOP:    ubuntu
XDG_SESSION_TYPE:       x11
GPG_AGENT_INFO:         /run/user/1001/gnupg/S.gpg-agent:0:1
XAUTHORITY:             /run/user/1001/gdm/Xauthority
GJS_DEBUG_TOPICS:       JS ERROR;JS LOG
WINDOWPATH:             2
HOME:                   /home/admin
USERNAME:               admin
IM_CONFIG_PHASE:        1
LANG:                   en_IN
LS_COLORS: rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
XDG_CURRENT_DESKTOP:    ubuntu:GNOME
VTE_VERSION:            6003
GNOME_TERMINAL_SCREEN:  /org/gnome/Terminal/screen/82170ab9_b5b3_424d_b0ce_37a40eb4e264
INVOCATION_ID:          9f9745f4c0c546eaa78b2c84f6d7ae59
MANAGERPID:             2722
GJS_DEBUG_Output:       stderr
LESSCLOSE:              /usr/bin/lesspipe %s %s
XDG_SESSION_CLASS:      user
TERM:                   xterm-256color
LESSOPEN:               – /usr/bin/lesspipe %s
USER:                   admin
GNOME_TERMINAL_SERVICE: :1.111
DISPLAY:                :0
SHLVL:                  1
QT_IM_MODULE:           ibus
XDG_RUNTIME_DIR:        /run/user/1001
JOURNAL_STREAM:         9:66796
XDG_DATA_DIRS:          /usr/share/ubuntu:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop
PATH:                   /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
GDMSESSION:             ubuntu
DBUS_SESSION_BUS_ADDRESS: unix:path=/run/user/1001/bus
_:                      /usr/bin/node
OLDPWD:                 /home/admin
total no of values available = 50
operating system:       undefined
alluserprofile:         undefined
public directory:       undefined