遍历对象的key和value
获取对象的key数组
Object.keys(对象)
// 返回对象里所有key组成的数组集合
举例:
Object.keys({ "a":"10", "b":"20" })
// ["a", "b"]
当我们需要同时获得对象下数据的key和value时可以用这种方法遍历
var object = { "a":"10", "b":"20" }
for(let key in object){
console.log(key, "=", object[key])
}
控制台输出:a=10 b=20
如果只需获取某个的值打点调用即可
数组操作
数组.push(新的元素) 入栈数据到数组(末位添加)
数组.unshift(新的元素,新的元素2...) 起始位置添加一个或多个元素
数组.pop() 出栈一条数据
数组.splice(index,howmany,item1,.....,itemX) index删除数据的位置 howmany删除数据的个数 item N 添加的新数据
数组.findIndex(函数(当前元素的值‘必选’,当前元素的索引值‘可选’,当前元素属于的数组对象‘可选’),执行回调时使用传递给函数用作 "this" 的值‘可选’) 返回传入一个测试条件(函数)符合条件的数组第一个元素位置(可以配合splice使用,删除指定位置元素);
数组1.concat(数组2,数组3...) 拼接数组2或者更多到数组1后面
数组.map(函数(当前元素的值‘必选’,当前元素的索引值‘可选’,当前元素属于的数组对象‘可选’),执行回调时使用传递给函数用作 "this" 的值‘可选’) 返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值
数组.filter(函数(当前元素的值‘必选’,当前元素的索引值‘可选’,当前元素属于的数组对象‘可选’),执行回调时使用传递给函数用作 "this" 的值‘可选’) 创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素
数组.includes(值,索引‘从第几个开始找,负值则为从倒数第几个开始’) 判定数组内是否包含该值,返回值true、false
数组.some(函数(当前元素的值‘必选’,当前元素的索引值‘可选’,当前元素属于的数组对象‘可选’),执行回调时使用传递给函数用作 "this" 的值‘可选’) 检测数组内元素是否满足函数里的条件,返回true、false
数组.forEach(函数(当前元素的值‘必选’,当前元素的索引值‘可选’,当前元素属于的数组对象‘可选’),执行回调时使用传递给函数用作 "this" 的值‘可选’) 用于调用数组的每个元素,并将元素传递给回调函数
数组.find(函数(当前元素的值‘必选’,当前元素的索引值‘可选’,当前元素属于的数组对象‘可选’),执行回调时使用传递给函数用作 "this" 的值‘可选’) 返回传入一个测试条件(函数)符合条件的数组第一个元素
数组去重
要去重的数组 = 要去重的数组.filter((item, index)=> {
return 要去重的数组.indexOf(item, 0) === index
})
字符串转数组
字符串.split(字符串或正则表达式(必选),返回的数组的最大长度(可选))拆分字符串成数组 ej:通过','拆分字符串: 字符串.split(',')
字符串.substring(start,stop) start必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾。
字符串.slice(start,end) start要抽取的片断的起始下标。如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。
end紧接着要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置。
字符串.indexOf(字符) 判断一个字符第一次出现在某个字符串的索引,如果包含返回它的索引,如果不包含返回-1
字符串.lastIndexOf(字符) 判断一个字符最后一次出现在某个字符串的索引,如果包含返回它的索引,如果不包含返回-1
字符串.charAt(num) 返回指定索引出的字符
字符串1.concat(字符串2) 拼接2个字符串,返回一个新字符串,对原有字符串没有任何改变
字符串.replace(字符/正则,1) 替换指定字符,返回替换后新的字符串,对原有字符串有改变(第一个参数可以是正则表达式) 只能替换一次 ,配合正则式修饰符g使用
eg:var str='aaaaee'; var reg=/a/g; console.log(str.replace(reg,1)); //"1111ee"
字符串去除空格
去除字符串内所有的空格:str = str.replace(/\s*/g,"");
去除字符串内两头的空格:str = str.replace(/^\s*|\s*$/g,"");
去除字符串内左侧的空格:str = str.replace(/^\s*/,"");
去除字符串内右侧的空格:str = str.replace(/(\s*$)/g,"");
str.trim() // 去除两头空格