阵:
var arr = {'abc','def','ghi'};
Run Code Online (Sandbox Code Playgroud)
我想通过使用索引删除上面的数组值'def'.
Kum*_*ran 72
使用拼接方法.
ArrayName.splice(indexValueOfArray,1);
Run Code Online (Sandbox Code Playgroud)
这1将从数组中删除项目indexValueOfArray.
mek*_*all 20
您的示例代码是错误的,将抛出一个SyntaxError.您似乎已经混淆了创建对象的语法Object与创建Array.
正确的语法是: var arr = [ "abc", "def", "ghi" ];
要从数组中删除项目,请根据其值使用splice方法:
arr.splice(arr.indexOf("def"), 1);
Run Code Online (Sandbox Code Playgroud)
要通过索引删除它,只需直接引用它:
arr.splice(1, 1);
Run Code Online (Sandbox Code Playgroud)
pet*_*est 11
你的语法不正确,你应该指定一个哈希:
hash = {abc: true, def: true, ghi: true};
Run Code Online (Sandbox Code Playgroud)
或者一个数组:
arr = ['abc','def','ghi'];
Run Code Online (Sandbox Code Playgroud)
只需将其设置为null,即可从哈希中有效删除项:
hash['def'] = null;
hash.def = null;
Run Code Online (Sandbox Code Playgroud)
或完全删除它:
delete hash.def;
Run Code Online (Sandbox Code Playgroud)
要从数组中删除项目,您必须遍历每个项目并找到所需的项目(可能存在重复项).您可以使用数组搜索和拼接方法:
arr.splice(arr.indexOf("def"), 1);
Run Code Online (Sandbox Code Playgroud)
这将找到"def"的第一个索引,然后使用splice将其从数组中删除.但是我建议使用.filter(),因为它可以让你获得更多控制:
arr.filter(function(item) { return item !== 'def'; });
Run Code Online (Sandbox Code Playgroud)
这将创建一个只包含非"def"元素的新数组.
值得注意的是,arr.filter()将返回一个新数组,而arr.splice将修改原始数组并返回已删除的元素.这些都很有用,具体取决于您要对项目执行的操作.
| 归档时间: |
|
| 查看次数: |
110550 次 |
| 最近记录: |