이 번역은 완료되지 않았습니다. 이 문서를 번역해 주세요.

FormData 인터페이스의 set() 메서드는 FormData 객체 내에 있는 기존 키에 새 값을 설정하거나, 존재하지 않을 경우 key/value을 추가합니다.

set() 과 FormData.append 의 차이점은 지정된 키가 이미 존재할 경우에, set() 은 모든 기존 값들을 새로운 값으로 덮어쓰기하는 반면, FormData.append 는 기존 값의 끝에 새 값을 추가합니다.

메모: 이 메서드는 웹워커(Web Workers)에서도 사용할 수 있습니다.

Syntax

이 메서드에는 두 가지 버전이 있습니다: 매개변수가 두 개인 버전과 세 개인 버전입니다:

formData.set(name, value);
formData.set(name, value, filename);

Parameters

name
value 에 포함되는 데이터 필드의 이름입니다.
value
필드의 값입니다. 파라미터가 두 개인 버전에서는 USVString이고, 그렇지 않은 경우 문자열로 변환됩니다. 파라미터가 세 개인 버전에서는 Blob, FileUSVString이 될 수 있습니다. 이들 중 어느것도 지정되지 않으면 값은 문자열로 변환됩니다.
filename Optional
Blob 또는 File 이 두 번째 매개 변수로 전달될 때, 서버에 리포트하는 파일 이름(a USVString)입니다. Blob 객체의 기본 파일 이름은 "blob"입니다.

메모: Blob 을 FormData 객체에 추가할 데이터로 지정하면,  "Content-Disposition" 헤더에서 서버에 리포트하는 파일 이름이 브라우저마다 다를 수 있습니다.

Example

다음 코드를 따라 빈 FormData 객체를 만듭니다:

var formData = new FormData(); // Currently empty

FormData.set를 사용하여 key/value 쌍을 추가할 수 있습니다::

formData.set('username', 'Chris');
formData.set('userpic', myFileInput.files[0], 'chris.jpg');

Specifications

Specification Status Comment
XMLHttpRequest
The definition of 'set()' in that specification.
Living Standard  

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support50 No39 No No Yes
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support ?50 No Yes No No ?

See also

문서 태그 및 공헌자

이 페이지의 공헌자: DeadIntegral
최종 변경자: DeadIntegral,