如何在javascript中取消设置数组中的元素
How do I unset an element in an array in javascript?
如何从数组foo中删除键"bar",使"bar"不会显示在中
for(key in foo){alert(key);}
不要使用delete,因为它不会从数组中删除元素,它只会将其设置为未定义,这样就不会正确反映在数组的长度中。
如果您知道密钥,则应使用拼接,即
myArray.splice(key, 1);
对于像史蒂文这样的人,你可以尝试这样的东西:
for (var key in myArray) {
if (key == 'bar') {
myArray.splice(key, 1);
}
}
或
for (var key in myArray) {
if (myArray[key] == 'bar') {
myArray.splice(key, 1);
}
}
delete foo[key];
:D
如果你知道密钥名称,只需这样做:
delete array['key_name']
一个重要的注意事项:JavaScript数组不像PHP中的那些数组那样是关联数组。如果您的"数组键"是一个字符串,则不再对数组的内容进行操作。您的数组是一个对象,并且您正在使用括号表示法来访问名为<密钥名称>。因此:
var myArray=[];myArray["bar"]=true;myArray["foo"]=true;alert(myArray.length);//返回0。
因为您没有向数组中添加元素,所以只修改了myArray的bar和foo成员。
就是这样做的
myArray.splice( myArray.indexOf('bar') , 1)
http://www.internetdoc.info/javascript-function/remove-key-from-array.htm
removeKey(arrayName,key);
function removeKey(arrayName,key)
{
var x;
var tmpArray = new Array();
for(x in arrayName)
{
if(x!=key) { tmpArray[x] = arrayName[x]; }
}
return tmpArray;
}
删除和拼接之间有一个重要区别:
原始数组:
[<1个空项目>,"一个",<3个空项目>,'five',<3个空项>;,'nine']
拼接后(array.SPLICE(1,1)):
[<4个空项目>,'5',<3个空项目>,'9e']
AFTER DELETE(删除数组[1]):
[<5个空项目>,'5',<3个空项目>,'9e']
数组元素未设置
- 使用pop
var ar = [1, 2, 3, 4, 5, 6];
ar.pop(); // returns 6
console.log( ar ); // [1, 2, 3, 4, 5]
- 使用移位
var ar = ['zero', 'one', 'two', 'three'];
ar.shift(); // returns "zero"
console.log( ar ); // ["one", "two", "three"]
- 使用拼接
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];
var removed = arr.splice(2,2);
var list = ["bar", "baz", "foo", "qux"];
list.splice(0, 2);
// Starting at index position 0, remove two elements ["bar", "baz"] and retains ["foo", "qux"].
- 了解更多
相关文章:
- 在函数中添加数组元素的数值
- 访问JSON对象内部的数组元素
- Mongoose-在更新中删除数组元素
- javascript数组元素是否知道其封闭数组
- 将数组元素附加到FormData dos'不适用于Firefox 15
- 如何在javascript中使用click函数选择数组元素
- 如何在JavaScript中剥离数组元素中的非整数
- 消隐数组元素是否生成自己的属性
- 如何使一个Math.random数组元素比另一个数组元素更有可能被选中
- 在Codrops的内容中添加数组元素展开缩略图网格预览
- 如何使用Jquery水平打印表中的数组元素,并在某个元素之后垂直打印
- 如何访问数组中的数组元素(JavaScript)
- 生成ACF标记位置的数组(元素列表后缺少])
- validate.js验证数组元素
- JavaScript Unshift EACH 数组元素
- 如何在加号运算符之后选择数组元素的一部分
- 访问标记图标的图像数组元素
- JavaScript 合并相同的数组元素
- 删除仅空格数组元素
- JavaScript闭包和返回数组元素