- for...in
循环遍历对象自身的和继承的可枚举属性(不含Symbol属性).
- Object.getOwnPropertyNames()
返回一个数组,包含对象自身的所有属性(不含Symbol属性,但是包括不可枚举属性).
- Reflect.ownKeys()
返回一个数组,包含对象自身的所有属性(包括Symbol属性和不可枚举属性).
`### 遍历数组`
- forEach()
`let arr = [1,2,,3];``arr.forEach((v,k) => {`` ``console.log(v);``})``//跳过空`
- for...in
`> 注意``for``...in遍历的是索引``let arr = [``1``,``2``,,``3``];``for``(let ele in arr) {`` ``console.log(ele);``}``//0 1 3`
- for...of
`let arr = [1,2,,3];``for``(let ele of arr) {`` ``console.log(ele);``}``//1,2,undefined,3`
js的对象的常用的方法
Object.entries() //返回自身可枚举的[key,value] Object.keys(),取得对象自身可枚举的属性名,不包括原型链
Object.values() Object.hasOwnProperty(key)//是否有这个属性 true/false Object.getOwnPropertyNames() //取得对象自身所有的属性名,不包括原型链 //for in 对对象进行遍历,可以拿到自身以及原型链上的可枚举的属性 Object.freeze()//冻结一个对象,不可修改,不可删除。不可添加新的属性 Object.prototype.toString()// 返回数组[object,object/array/function等] //判断是数组还是对象就是用的这个方法
js的字符串的常用的方法
str.concat()//拼接
str.includes()//判断字符串是否包含在另外一个字符串中 str.indexOf(),str.lastIndexOf() str.split() //按特定的符号分割成字符串数组! str.toLowerCase() //转换成小写的形式 str.toUpperCase() //转换成大写的形式 str.trim()//去空格
js的数组的常用的方法
arr.push(),arr.pop(), arr.shift(),arr.unshift(),arr.reverse(),arr.every(),arr.some()
arr.forEach()不会迭代空元素,arr.filter()实现过滤,arr.map()返回数组,arr.reduce()前后 arr.includes(),arr.indexOf(),arr.lastIndexOf() //索引正序,但是从后往前找 arr.findIndex() //找索引, arr.find() //找满足条件的元素 arr.join()//默认以逗号隔开 arr.splice(3,1,'o','i')//从索引3开始,删除1个,添加两个字符串。 arr.flat() //数组降维 ,返回新数组 arr.flat(1) arr.entries() //将数组返回一个对象,包含对象索引的键值对
push()
将一个或多个元素添加到数组的末尾,并返回该数组的新长度pop()
方法从数组中删除最后一个元素,并返回该元素的值-
- substring(star,stop) ,star>stop时会交换两者;相等时返回空串;为负数时会将负数变为0,奇怪点较多。
- substr(star,length),star为负数时,表示倒数位置;length<=0时,返回空串
- slice(star,stop), 可以应用在数组和字符串;star>=stop时返回空串/数组;为负数时代表倒数位置
- splice(start,length,items,只能用于数组,会改变原始数组;satr<0代表倒数,length<0返回空,length过大时截取全部。