Это логический оператор OR в JS (и большинстве других языков). Это значение определено в спецификации 11.11 . Как отмечено в спецификации, выражения с обеих сторон будут сначала оцениваться, а логическое ИЛИ - слева-направо ассоциативное . Обратите внимание, что оценка операндов соответствует стандартной семантике ToBoolean из раздела 9.2 , поэтому [null, undefined, 0, '']
все считаются ложными.
В отличие от большинства языков, JS возвращает левый операнд, если он прав или правый операнд в противном случае. Это поведение было рассмотрено до в ряде вопросов SO, но стоит отметить, так как большинство языков просто возвращают true или false. Это поведение часто используется для предоставления значений по умолчанию для других неопределенных переменных.
Комментарий Паскаля был очень полезен, и я нашел несколько, например,
install.packages("NISTunits", dependencies = TRUE)
library(NISTunits)
NISTdegTOradian(180)
NISTradianTOdeg(pi)
Если у вас есть data.frame, он может вам помочь.
В моем случае davis_2 $ wd - это столбец в градусах
#Add column to Data Base
davis_2$radian_wd = davis_2$wd
#Create a loop to change the data, and change the 62'th col to Radians
for(i in 1:nrow(davis_2)){
davis_2[i, 62] = (davis_2[i, 62]*pi)/180
}
# Review
head(davis_2$radian_wd)
. Вы можете использовать пакет units
для этого.
library(units)
pi_rad <- as_units(pi, "radians")
pi_deg <- set_units(pi_rad, "degrees")
set_units(pi_deg, "radians")