1.1 数据属性(`properties`),对象的普通属性将字符串名称映射到值。例如,下面对象obj有一个数据属性,名称为 prop,对应的值为 123:var obj = {prop: 123}可以用以下方式读取属性的值:console.log(obj.prop)// 123,console.log(obj["prop"])// 123,当然也可以用以下方式来设置属性的值:obj.prop = "abc"obj["prop"] = "abc"
1.2 访问器属性,另外,可以通过函数处理获取和设置属性值。 这些函数称为访问器函数。 处理获取的函数称为getter。 处理设置的函数称为setter:var obj = {get prop () {return 'Getter'},set prop (value) {console.log('Setter: ' + value)}}访问 obj 属性:>obj.prop'Getter'>obj.prop = 123Setter: 123。
1.3 内部属性一些属性只是用于规范,这些属于“内部”的属性,因为它们不能直接访问,但是它们确实影响对象的行为。内部属性有特殊的名称都写在两个方括号,如:内部属性[[Prototype]]指向对象的原型。它可以通过Object.getPrototypeOf()读取。它的值只能通过创建具有给定原型的新对象来设置,例如通过object.create()或__proto__ 。
内部属性[[Extensible]]决定是否可以向对象添加属性。可以通过Object.isExtensible() 方法判断一个对象是否是可扩展的(是否可以在它上面添加新的属性)。可以通过Object.preventExtensions()方法让一个对象变的不可扩展,也就是永远不能再添加新的属性。
属性特性(attribute),属性的所有状态,包括数据和元数据,都存储在特性(attribute)中。它们是属性具有的字段,就像对象具有属性一样。特性(attribute)键通常用双括号编写:
为了后端更好的处理数据,前端统一把数据放在一个数组里。那该如何存放在一个数组中呢?经过一方查找,测试得出如下:主要有两种方式:
通过合并(连接)现有数组来创建一个新数组
示例如下:
(在数组结尾处)向数组添加一个新的元素
示例如下:
打印结果如下:
如有其他需求可查询官方文档进行学习,对你有帮助的话 点个赞 在走吧
1.ArrayList方法摘要构造方法摘要
ArrayList()
构造一个初始容量为 10 的空列表。
ArrayList(Collection<? extends E>c)
构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排列的。
ArrayList(int initialCapacity)
构造一个具有指定初始容量的空列表。
方法摘要
boolean add(E e)
将指定的元素添加到此列表的尾部。
void add(int index, E element)
将指定的元素插入此列表中的指定位置。
boolean addAll(Collection<? extends E>c)
按照指定 collection 的迭代器所返回的元素顺序,将该 collection 中的所有元素添加到此列表的尾部。
boolean addAll(int index, Collection<? extends E>c)
从指定的位置开始,将指定 collection 中的所有元素插入到此列表中。
void clear()
移除此列表中的所有元素。
Object clone()
返回此 ArrayList 实例的浅表副本。
boolean contains(Object o)
如果此列表中包含指定的元素,则返回 true。
void ensureCapacity(int minCapacity)
如有必要,增加此 ArrayList 实例的容量,以确保它至少能够容纳最小容量参数所指定的元素数。
E get(int index)
返回此列表中指定位置上的元素。
int indexOf(Object o)
返回此列表中首次出现的指定元素的索引,或如果此列表不包含元素,则返回 -1。
boolean isEmpty()
如果此列表中没有元素,则返回 true
int lastIndexOf(Object o)
返回此列表中最后一次出现的指定元素的索引,或如果此列表不包含索引,则返回 -1。
E remove(int index)
移除此列表中指定位置上的元素。
boolean remove(Object o)
移除此列表中首次出现的指定元素(如果存在)。
protected void removeRange(int fromIndex, int toIndex)
移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之间的所有元素。
E set(int index, E element)
用指定的元素替代此列表中指定位置上的元素。
int size()
返回此列表中的元素数。
Object[] toArray()
按适当顺序(从第一个到最后一个元素)返回包含此列表中所有元素的数组。
<T>T[] toArray(T[] a)
按适当顺序(从第一个到最后一个元素)返回包含此列表中所有元素的数组;返回数组的运行时类型是指定数组的运行时类型。
void trimToSize()
将此 ArrayList 实例的容量调整为列表的当前大小。
2.js实现部分功能
复制代码 代码如下:
<html>
<script type="text/javascript" src="json.js"></script>
<head>
<script type="text/javascript">
function ArrayList(){
this.arr=[],
this.size=function(){
return this.arr.length
},
this.add=function(){
if(arguments.length==1){
this.arr.push(arguments[0])
}else if(arguments.length>=2){
var deleteItem=this.arr[arguments[0]]
this.arr.splice(arguments[0],1,arguments[1],deleteItem)
}
return this
},
this.get=function(index){
return this.arr[index]
},
this.removeIndex=function(index){
this.arr.splice(index,1)
},
this.removeObj=function(obj){
this.removeIndexwww.bjldfw.comindexOf(obj))
},
this.indexOf=function(obj){
for(var i=0i<this.arr.lengthi++){
if www.bjldfw.comarr[i]===obj) {
return i
}
}
return -1
},
this.isEmpty=function(){
return this.arr.length==0
},
this.clear=function(){
this.arr=[]
},
this.contains=function(obj){
return this.indexOf(obj)!=-1
}
}
//新建一个List
var list=new ArrayList()
//增加一个元素
list.add("0").add("1").add("2").add("3")
//增加指定位置
list.add(2,"22222222222")
//删除指定元素
list.removeObj("3")
//删除指定位置元素
list.removeIndex(0)
for(var i=0i<list.size()i++){
document.writeln(list.get(i))
}
document.writeln(list.contains("2"))
</script>
</head>
<body>
</body>
</html>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)