Привет, вы можете использовать блок среды {} на уровне конвейера или на каждом этапе. В блоке Environment вы можете установить свои переменные, проверьте ниже пример:
pipeline {
agent {label 'master'}
environment{
env1 = 'value0' // these are environment variables for all stages
}
stages{
stage('stage 1') {
environment{
env1 = 'value1' // these are environment variables for 'stage 1'
}
steps{
echo "$env1"
}
}
stage('stage 2') {
environment{
env1 = 'value2' // these are environment variables for 'stage 2'
}
steps{
echo "$env1"
}
}
stage('stage 3') {
steps{
echo "$env1"
}
}
}
}
Глобальный объект является на самом деле окном, таким образом, можно сделать
if (this === window)
Ниже должен работать начиная с использования Function.call со значением пустого указателя, вызовет его в глобальной области видимости.
this === ((function () { return this; }).call(null))
Более простой вариант,
this === (function () { return this; })()
будет также работать, но я думаю, что первое делает намерение более ясным.
Ответ RoBorg концептуально корректен - кроме window
только доступно в контексте браузеров основной поток (таким образом, это обязательно исключает рабочие потоки и т.п., а также любой небраузер разместил JS, который становится все меньше и меньше редким).
Ваша самая безопасная ставка в основном, что Вы имели выше, но необходимо использовать var
и ===
поскольку для интерпретатора возможно оптимизировать такие доступы более полностью.