首页 > 试题广场 >

新数组

[编程题]新数组
  • 热度指数:17510 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
请补全JavaScript代码,该函数接受两个参数分别为数组、索引值,要求在不改变原数组的情况下返回删除了索引项的新数组。
return [...array.slice(0, index), ...array.slice(index+1)]

发表于 2021-12-29 14:22:28 回复(2)
方法一:
        <script type="text/javascript">
            const _delete = (array,index) => {
                // 补全代码
                // 方法一:使用数组的filter方法
                return array.filter(element => element !== array[index]);
            }
        </script>
方法二:
        <script type="text/javascript">
            const _delete = (array,index) => {
                // 补全代码
                // 方法二:笨方法,遍历数组,将index索引之外的元素push到新数组中
                let res = [];
                for (let i = 0;i< array.length;i++) {
                    if (i !== index) {
                        res.push(array[i]);
                    }
                }
                return res;
            }
        </script>



发表于 2022-03-20 14:07:40 回复(3)
        <script type="text/javascript">
            const _delete = (array,index) => {
                // 补全代码
                let arr=[...array]
                arr.splice(index,1)
                return arr
            }
        </script>

发表于 2021-12-04 22:33:24 回复(2)
return array.slice(0,index).concat(array.slice(index+1,array.length))

发表于 2022-05-30 23:03:39 回复(1)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
    	
        <script type="text/javascript">
            const _delete = (array,index) => {
                // 补全代码
                let resArr = new Array();
                    array.forEach(function(v,i,a){
                    if(i != index){
                        resArr.push(v);
                    }
                })
                return resArr;
            }
        </script>
    </body>
</html>

发表于 2022-03-22 13:49:54 回复(0)
        const _delete = (array, index) => {
            //方法一
            // return array.filter((item, i, self) => {
            //     console.log(i)
            //     return i != index
            // })

            //方法二
            // let newarray = array.concat()
            // newarray.splice(index, 1)
            // return newarray

            //方法三
            let Arr = [...array];
            let newArr = []
            for (let i = 0; i < Arr.length; i++) {
                if (i != index) {
                    newArr.push(Arr[i])
                }
            }
            return newArr
        }
发表于 2022-04-17 20:51:44 回复(3)
const _delete = (array,index) => {
                // 补全代码
               return array.filter((value, i) =>{
                    return i !== index;
                })
            }

发表于 2021-12-02 23:31:36 回复(0)
 const _delete = (array,index) => {
     // 补全代码
     return array.slice(0, index).concat(array.slice(index + 1));
 }

编辑于 2024-03-26 00:45:48 回复(0)
这道题的题意我属实是没读明白
编辑于 2024-03-01 17:59:18 回复(0)
  const _delete = (array,i) => {
                                //  我这样不对吗,为啥过不了
                       return array.filter((item,index)=>index  == i)
                
                          
                    }
                
               console.log( _delete([1,2,3],1));
发表于 2023-10-24 16:16:11 回复(0)
    const _delete = (array,index) => {
                // 补全代码
                return array.filter((item,i)=>i!=index)
            }

发表于 2023-09-02 15:44:14 回复(0)
return array.filter((_,aIndex)=> aIndex !== index)
发表于 2023-08-24 11:38:34 回复(0)
            const _delete = (array,index) => {
                const newArray = [...array];
                newArray.splice(index, 1);
                return newArray;
            }
发表于 2023-07-28 20:40:58 回复(0)
return array.slice(0, index).concat(array.slice(index+1))

发表于 2023-05-22 22:56:22 回复(0)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
    	
        <script type="text/javascript">
            const _delete = (array,index) => {
                // 补全代码
                return array.slice(0,index).concat(array.slice(index+1));
            }
        </script>
    </body>
</html>

发表于 2023-05-14 13:51:50 回复(0)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
        
        <script type="text/javascript">
            const _delete = (array,index) => {
                // 补全代码
                let arr=[];
                array.forEach((item,idx)=>{
                    if(idx!==index){
                       arr.push(item)
                    }
                })
                return arr
            }
        </script>
    </body>
</html>
发表于 2023-04-30 16:57:49 回复(0)

利用filter一行代码得出答案

 <script type="text/javascript">
             const _delete = (array,index) => {
             return array.filter((item,i) => i!==index)
            }
        </script>


发表于 2023-03-28 11:08:53 回复(0)
const _delete = (array,index) => {
                // 补全代码
               
        ar=array.copyWithin(0)
        temp=ar[index]
        ar[index]=ar[ar.length-1]
        ar[ar.length-1]=temp
        ar.pop()
       
      for(i=0;i<ar.length-1-index; i++){
          temp1=ar[index+i]
          ar[index+i]=ar[index+i+1]
          ar[index+i+1]=temp1      
      }
      return ar
}
发表于 2023-03-08 18:39:10 回复(0)
const _delete = (array,index) => {
      return array.filter((_, idx) => index !== idx);
}
发表于 2023-03-02 13:40:32 回复(0)
// 解法一
return array.filter(item => {
    if(item !== array[index]) return item
})
    
// 二
return [...array.slice(0, index), ...array.slice(index+1)]

发表于 2023-02-19 17:32:34 回复(0)