zoukankan      html  css  js  c++  java
  • 关于javascript里面仿python切片操作数组的使用方法

    其实在使用了好一段时间的 python之后,我觉得最让我念念不忘的并不是python每次在写函数或者循环的时候可以少用{}括号这样的东西(ps:其实也是了。。感觉很清爽,而且又开始写js的时候老是想用xxx in range(): ...跪。:( )

    而是我觉得字符串操作的切片真实让我感到前所未有的爽。

    试想一下,我们平时操作最多的数组和字符串在切片的帮助下,不知道可以省去多少时间和麻烦。而且有了切片甚至不用去记很多可以被切片代替的api。

    今天我在啃《学习javascript数据结构与算法》的时候,无意中发现js其实合理利用

    Array.prototype.splice()

    这家伙,也能轻松实现切片的效果,而不需要再去记那些繁琐的api。

    例如 我这里先申明一个下面用到的实验数组 

    var laplace = [0,1,2,3,4,5,6,7,8]

    然后我要往删除数组里面第一个元素 按照切片的写法应该是

    laplace = laplace[1:]

    而javascript 可以使用unshift()方法来实现 也可以使用我这里说到的类似于切片操作的 splice()方法

    laplace.splice(0,1);

    返回被删除的第一个元素。

    splice()方法 第一个参数代表操作数组的起始位置,第二个参数代表删除元素的个数,第三个参数往后,是要添加到数组里的值。

    那么如果要删除该数组里面的最后一个参数可以使用

    laplace.splice(laplace.lenth-1,1);

    也不用去记shift() and unshift()类似的api了。感觉是不是有点方便?

    然而这里要特别注意一下。。python切片的抽象等级远远高于 这里的仅仅能对数组使用的splice方法。 所以 使用的时候 还请注意。

  • 相关阅读:
    2.java基础语法(上)
    1.java概述
    Qt layout透明的问题
    Duilib 关于ChildLayout崩溃的问题
    关于注册表使用的几个问题
    win32接口获取ping值
    Web开发中遇到的问题
    DuiLib 窗口透明方法
    通过进程名杀死进程的方法--WIN32
    关于在Qt的MainWindow窗口中添加Layout的问题
  • 原文地址:https://www.cnblogs.com/piperck/p/4955623.html
Copyright © 2011-2022 走看看