我正在JavaScript項目中,我有2個數組1.元素2. elementsOrder; elementsOrder數組包含每個元素的名稱,而elements數組包含每個元素的所有屬性。當我想從每個數組中刪除一個元素時,我使用「delete」構建函數,但它不刪除元素只將它設置爲Undefined,因此比我使用splice方法推出那些未定義的元素,但它不會沒有工作。JavaScript刪除比拼接
的是源:
var s1 = elementsOrder.indexOf(id);
delete elements[s1];
delete elementsOrder[s1];
它的工作,並設置元素一一「未定義」順利,但是當我做:
var s1 = elementsOrder.indexOf(id);
delete elements[s1];
delete elementsOrder[s1];
elements.splice(s1, 1);
elementsOrder.splice(s1, 1);
使用簡單的拼接方法不要」 t工作:
var s1 = elementsOrder.indexOf(id);
elements.splice(s1, 1);
elementsOrder.splice(s1, 1);
我用這段代碼在我的Javascript Canvas項目中爲一些畫布對象設置動畫效果,這樣我就可以很容易地看到「刪除」工作順利並逐個「取消定義」元素,並且拼接不能順利進行,並且不會逐個放棄元素。
請參閱http://jsfiddle.net/7ZuuZ/工資atantion運作動畫,第三個功能從底部
給了我們一個jsfiddle!它會幫助解答準確性和速度! – Phil
你爲什麼使用刪除?拼接足以做你想做的事。 http://www.w3schools.com/jsref/jsref_splice.asp – Mark
添加預期的和實際的輸出! – tucuxi