每一个你不满意的现在,都有一个你不努力的曾经. 网站首页 > js
JavaScript知识点二
发布时间:2020-10-13 14:07:20 修改时间:2020-10-13 14:16:03 阅读:7616 评论:0 0
array数组的增删改查排序
增加:
push() 方法可向数组的末尾添加一个或多个元素 unshift() 方法是向数组头部添加一个或多个元素,使用上同push方法 concat() 连接两个或以上的数组,返回的是一个新数组,不影响原数组
删除:
pop() 方法删除数组最后一个元素,该方法会改变原数组,删除元素并且数组长度-1,返回值是删除的元素的值,如果数组是空数组,则不进行删除,返回值是undefined shift() 方法删除数组第一个元素,使用上同pop方法
修改:
slice(start,end) 数组的截取函数,start 必需,end 选填 ,均可以为负数,返回的是start到end(不包括end)之间的元素,返回新数组,不影响原来数组 (slice 切开) splice(index,howmany,item1,.....,itemX) 方法删除或者添加数组,会操作原数组,返回的是含有被删除的元素的数组,index 必需 起始位置,howmany 必需 数量可以为0,即不操作,第三个参数添加到数组 替代数组index的位置
排序:
sort() 对数组进行排序,改变的是原数组元素顺序,默认是按字符编码排序,所以在遇到数字排序时,就需要定义函数 reverse() 颠倒元素顺序,改变原数组
其他:
indexOf() 找出某个元素在数组中的索引,并返回该元素索引。 join() 方法将数组拆分成字符串,返回值字符串,默认分隔符为逗号“,” toString() 将数组转换成字符串,返回字符串,格式为逗号隔开
Object属性方法
var obj = { 0: "a", 1: "b", 2: "c"}; // 以下示例以此对象为例 //属性: Object.prototype.writable//:默认为false Object.prototype.enumerable//:默认为false Object.prototype.configurable//:默认为false Object.prototype.constructor//:用于创建一个对象的原型。 //常用方法: Object.prototype.hasOwnProperty()//:返回一个布尔值,表示某个对象是否含有指定的属性,而且此属性非原型链继承。 Object.prototype.isPrototypeOf()//:返回一个布尔值,表示指定的对象是否在本对象的原型链中。 Object.prototype.propertyIsEnumerable()//:判断指定属性是否可枚举。 Object.prototype.toString()//:返回对象的字符串表示。 Object.prototype.watch()//:给对象的某个属性增加监听。 Object.prototype.unwatch()//:移除对象某个属性的监听。 Object.prototype.valueOf()//:返回指定对象的原始值。 Object.create(proto,[propertiesobject])//:创建一个拥有指定原型和若干个指定属性的对象。 Object.keys(obj) = Object.getOwnPropertyNames(obj).sort()//:返回一个由给定对象的所有可枚举自身属性的属性名组成的数组 //举例: console.log(Object.getOwnPropertyNames(obj).sort()); //["0", "1", "2"] Object.keys(obj)//["0", "1", "2"] Object.values(obj)//:返回一个包含指定对象所有的可枚举属性值的数组,数组中的值顺序和使用for…in循环遍历的顺序一样。 //举例: Object.values(obj);//["a", "b", "c"] Object.entries(obj)//:返回一个包含由给定对象所有可枚举属性的属性名和属性值组成的 [属性名,属性值] 键值对的数组,数组中键值对的排列顺序和使用for…in循环遍历该对象时返回的顺序一致。 //举例: console.log(Object.entries(obj)); // [["0","a"],["1","b"],["2","c"]] Object.assign(target, …sources)//:参考数组操作方法concat(),把任意多个的源对象自身的可枚举属性拷贝给目标对象,然后返回目标对象。 //举例: Object.assign(obj,{3:'d'},{4:'e',5:'f'});//{0: "a", 1: "b", 2: "c", 3: "d", 4: "e", 5: "f"} //不常用的方法: Object.getPrototypeOf(object)//:返回该对象的原型。 Object.is(value1, value2)//:判断两个值是否是同一个值。 Object.isExtensible(obj)//:判断一个对象是否是可扩展的(是否可以在它上面添加新的属性)。 Object.isFrozen(obj)//:判断一个对象是否被冻结(frozen)。 Object.isSealed(obj)//:判断一个对象是否是密封的(sealed)。密封对象是指那些不可 扩展 的,且所有自身属性都不可配置的(non-configurable)且属性不可删除的对象(其可以是可写的)。 Object.freeze(obj)//:冻结一个对象,冻结指的是不能向这个对象添加新的属性,不能修改其已有属性的值,不能删除已有属性,以及不能修改该对象已有属性的可枚举性、可配置性、可写性。也就是说,这个对象永远是不可变的。该方法返回被冻结的对象。 Object.getOwnPropertyDescriptor(obj, prop)//:返回指定对象上一个自有属性对应的属性描述符。 Object.defineProperties(obj, props)//:在一个对象上添加或修改一个或者多个自有属性,并返回该对象。 Object.defineProperty
回复列表
关键字词:span,style,1px,font-size,数组,对象
上一篇:css常用属性
下一篇:JavaScript知识点三