unshift 方法:
定义和用法
unshift ()方法在数组的开头添加一个或多个元素,然后返回新的长度。
语法
阵列对象. unshift (纽约1,纽约2,纽约2 ) )。
参数
说明
纽约1号
需要。 添加到数组的第一个元素
纽约2号
可选件。 添加到数组中的第二个元素。
新ELEX
可选件。 可以添加一些元素。
返回值
光线的新长度。
说明
unshift ) )方法将该参数插入到arrayObject的开头,并将已存在的元素依次移动到高后缀处,从而留出空间。 方法的第一个参数是数组的新元素0,如果有第二个参数,则是新元素1。
请注意,unshift ()方法不创建新数组,而是直接修改原始数组。
提示和注释
注释:这个方法可以更改数组的长度。
提示:要在数组末尾添加一个或多个元素,请使用push ()方法。
在以前的开发过程中,曾巧妙地使用unshift解决了问题。 在这里分享一下吧:
这是商品分类的网页,有一级菜单和二级菜单。 目的是使各级菜单的第一个name全部。 像这样单击左侧的第1级菜单时,默认请求的是第1级分类下的所有数据,但在后台添加分类时没有添加该数据。 另外,在后台添加也不好,所以在前端获取数据进行加工是最好的方法。 最初想在2级菜单周期之前写标签,但是操作太复杂了。 稍后我想了一下,这种需求最适合用unshift操作。
数据结构如下
我是这样处理的:
getallcategory :功能(
let that=this;
获得类别列表().then ) ) RES={
RES.data.foreach((item )={
item.child.unshift({ ((
id :项目id,
name: ‘全部’
() )
() )
let数据=RES .数据;
类别标题=数据[0] .名称;
that.sid=数据[0] .标识;
that .产品列表=数据;
that.categoryerlist=RES.data [0].child? 数据.儿童:
页面=1;
that.loadend=假;
that.tempArr=[];
that .产品列表(;
() )
,后端返回的数据结构是二维数组,每个对象的child是辅助菜单,因此在获取数据时,将“全部”类别添加到数组中每个对象的child中,并将其id设置为父级id。 此时单击左侧主菜单时,请求当前默认分类的所有数据,这是一种非常好的unshift数组方法的示例。
shift 方法:
定义和用法
删除原始数组中的第一个条目,并返回删除的元素的值; 如果数组为空,则返回未定义
语法
vara=[ 1,2,3,4,5 ];
var b=a.shift (; //a:[ 2,3,4,5 ]如果您认为这篇文章对您有点帮助的话,麻烦您向开源项目订购star 33603358 github.crmeb.net/u/defu