๐โ๏ธ input ํ๊ทธ๋ก ํ์ผ์ ์ ๋ก๋ํ๊ฑฐ๋ ํ์ผ์ url์ ๊ฐ์ง๊ณ ์์ ๊ฒฝ์ฐ ํ์ผ์ ํ์ฅ์๋ฅผ ์ ๋๋ก ์ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด์.
How to: ํ์ผ ์ ๋ก๋ ํ e.target.files์ name์ ํ์ฉ
<input type="file" id="avatar" name="avatar" accept="*" />
์ ํ์ผ ๊ฐ์ฒด๋ inputํ๊ทธ๋ฅผ ํตํด ํ์ผ์ ์ ๋ก๋ ํ ํ ์ป๊ฒ ๋๋ ๊ฐ์ด๋ค.
๊ทธ ์ค name๊ฐ์๋ ํ์ผ์ ์ด๋ฆ์ด ์กด์ฌํ๋๋ฐ ์ด๋ฅผ ํ์ฉํด ํ์ฅ์ ๊ฐ์ ๊ตฌํ ์ ์๋ค.
<input
type="file"
id="upload"
onChange={(e) => {
const files = e.target.files;
const filename = files[0].name;
const splitedNameArr = filename.split('.');
const lastSplitedVal = splitedNameArr.at(-1);
console.log(lastSplitedVal);
}}
/>
ํ์ผ name์์ split์ ํตํด . ์ ๊ธฐ์ค์ผ๋ก ๋๋ ๋ค ๋ง์ง๋ง . ๋ค์ ๊ฐ์ ํ์ฅ์๋ก ์ธ์ํ๋ ๋ฐฉ๋ฒ์ ํ์ฉํ๋ค.
์ด๋ ๊ฒ ํ๋ฉด ํ์ผ ์ด๋ฆ ์ฌ์ด์ . ์ด ์กด์ฌํ๋๋ผ๋ ๊ฐ์ฅ ๋ง์ง๋ง . ๋ค ๊ฐ์ ํ์ฅ์๋ก ๋ณผ ์ ์๋ค.
* Array.prototype.at() ๊ธฐ๋ฅ์ด ๋๋ฌด ๋ง์ ๋ค์ด ๋งํฌ ๋จ๊ธด๋ค!
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/at