Вы можете использовать JavaScript Fetch API . Например:
function uploadButtonCLicked(){
var input = document.querySelector('input[type="file"]')
fetch('/url', {
method: 'POST',
body: input.files[0]
}).then(res => res.json()) // you can do something with response
.catch(error => console.error('Error:', error))
.then(response => console.log('Success:', response));
}
Преимущество: API Fetch поддерживается всеми современными браузерами, поэтому вам не нужно ничего импортировать. Также обратите внимание, что fetch () возвращает Promise , который затем обрабатывается с помощью .then(..code to handle response..)
асинхронно.
Сделать список символьным вектором (а не вектором имен)
rm(list = c('temp1','temp2'))
или
rm(temp1, temp2)
Другое решение rm(list=ls(pattern="temp"))
, удалите все объекты, соответствующие шаблону.
Другой вариант, который вы можете попробовать, - это расширение (расширение ответа @ mnel), если у вас много temp'x.
здесь «n» может быть числом присутствующих временных переменных
rm(list = c(paste("temp",c(1:n),sep="")))
Или используя регулярные выражения
"rmlike" <- function(...) {
names <- sapply(
match.call(expand.dots = FALSE)$..., as.character)
names = paste(names,collapse="|")
Vars <- ls(1)
r <- Vars[grep(paste("^(",names,").*",sep=""),Vars)]
rm(list=r,pos=1)
}
rmlike(temp)