我正在尋找一種方法,我可以在其中創建一個包含 的變數document.getElementById并將 ID 的正確值作為變數值包含在內。我現在擁有的是:
let lenght = parseInt(document.getElementById("lenght").value);
let start = parseInt(document.getElementById("start").value);
let end = parseInt(document.getElementById("end").value);
但我想要的是這樣的:
let documentById = parseInt(document.getElementById($elementName).value)
let lenght = documentById("lenght");
let start = documentById("start");
let end = documentById("end");
我是在以正確的方式思考還是這是一種沒有意義的方法?在我嘗試學習時,歡迎任何提示/建議。
uj5u.com熱心網友回復:
當然,您可以創建一個僅回傳該值的函式。
const documentById = (id) => parseInt(document.getElementById(id).value);
let length = documentById("length");
let start = documentById("start");
let end = documentById("end");
console.log("length:", length);
console.log("start:", start);
console.log("end:", end);
<input id="length" value="5" />
<input id="start" value="2" />
<input id="end" value="6" />
uj5u.com熱心網友回復:
您可以使用一個簡單的函式來完成此操作,該函式將元素的 ID 作為引數并按預期回傳值
function documentById(id) {
const el = document.getElementById(id);
if (!el) return undefined; // element doesn't exist
const value = parseInt(el.value, 10); // parsing string to a number (default radix is 10)
return isNaN(value) ? { number: false, value: value } : { number: true, value: value };
}
const { number, value } = documentById('end'); // if value isnt a number return false (to prevent errors);
if (number) console.log(value); // if value is a number log its value
else console.log('not a valid number')
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/330934.html
標籤:javascript 变量
