未定义:不删除javascript数组

未定义:不删除javascript数组,javascript,Javascript,我已经运行了简单的javascript代码。我想从数组中删除一个元素。虽然在删除元素本身后它仍然未定义,但它并没有被完全删除。它不应在阵列中留下任何间隙 var arr = ['dog',34,36.33,'apple',,,]; alert(arr); delete arr[2]; alert(arr); 我已经检查了delete的语法是否正确。我做错了吗。如果是这样,请查找解决方案。我希望完整的数组中没有删除的元素。请改用: delete删除属性,而不是从数组中拼接项目。这里delete是

我已经运行了简单的javascript代码。我想从数组中删除一个元素。虽然在删除元素本身后它仍然未定义,但它并没有被完全删除。它不应在阵列中留下任何间隙

var arr = ['dog',34,36.33,'apple',,,];
alert(arr);
delete arr[2];
alert(arr);
我已经检查了delete的语法是否正确。我做错了吗。如果是这样,请查找解决方案。我希望完整的数组中没有删除的元素。

请改用:


delete
删除属性,而不是从数组中拼接项目。这里delete是运算符。var-arr=[2,34,36.33,'apple'];arr.slice(2,1);警报(arr);在这里,它不会使arr不受arr[2]
splice()
not
slice()
var arr = ['dog',34,36.33,'apple'];
console.log(arr); // ["dog", 34, 36.33, "apple"] 
arr.splice(2,1);
console.log(arr)  // ["dog", 34, "apple"]