[英]how to set a value of a key of an array object in javascript?
我正在創建拖放文件(可以選擇多個文件)功能。 用戶可以在這里選擇多個文件。我想將文件的大小從字節轉換為 mb。 . 獲取所有文件的函數
腳本.js
const handleFiles = (files) => {
files = [...files];
//converting bytes into mb and trying to assign it back to size key
files.forEach(function (file) { <----these lines need to be changed
file["size"] = `${(file["size"] / 1024 ** 2).toFixed(2)} mb`; <------
}); <-----
console.log(files);
};
為什么我使用傳播運算符?
Ans:如果我不使用擴展運算符並且用戶只選擇一個文件,那么它會作為一個對象而不是一個對象列表傳遞
如何使用新值設置對象的每個大小鍵的值。
File.size 是只讀屬性,您無法更改它(請參閱此處: https : //developer.mozilla.org/en-US/docs/Web/API/File#instance_properties )。 如果要在 UI 中以 Mb 為單位顯示文件大小,則必須獲取 File.size(或 File["size"],就像您在做的那樣),並像在函數中一樣處理它以將其顯示在UI(讓函數返回大小數組,或在應用程序的呈現部分包含大小格式),但您不能更改 File 實例本身的屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.