我有一個想法,使一個Web窗體接收一個對象名稱並輸出其所有屬性。爲了做到這一點,我寫了下面的代碼段:如何將字符串轉換爲JavaScript中的對象?
var html5form = document.getElementsByClassName("html5_form");
html5form[0].onsubmit = function (e) {
var val = e.target.querySelector("input[name=obj]").value,
obj = window[val],
enumObj = new obj();
for (prop in enumObj) {
console.log(prop);
}
return false;
}
我與對象構造一個數據列表,並將其附加到輸入域。但我實際上迭代對象實例,而不是構造函數。上面提到的代碼只在我輸入像DataView和ArrayBuffer這樣的構造函數時才起作用,並且不適用於Array,Number等等。我的代碼有什麼問題?我試過調試,但沒有結果。
謝謝!你的意思是我應該檢查每個對象名稱並根據該名稱創建一個對象? – paperstreet7
不是。基元不完全具有普通對象和可枚舉屬性。 – ErikE