3.1 先说下Object.keys()
Object.keys()用于获得由对象属性名组成的数组
var obj = {
name: "lokka",
age: 18,
address: "beijing",
1: "ok",
_:"yes"
console.log(Object.keys(obj));
方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for…in 循环遍历该对象时返回的顺序一致
3.2 Object.keys() 结合 forEach() 遍历对象
var obj = {
name: "lokka",
age: 18,
address: "beijing",
1: "ok",
_:"yes"
Object.keys(obj).forEach(function(i) {
console.log(i, obj[i]);
有人会问,为什么不直接使用 for in 循环遍历对象,为什么要用 Object.keys(obj).forEach(i=>{})
遍历对象,而且看着更加的复杂了?
因为是从性能上进行考虑:
for in 会遍历整个原型链,这可能不是你所期望的结果,然后从性能角度上看 Object.keys 会更优。在一些eslint 的规则中也默认禁用了 for in 循环。
其实做过相关测试的博客已经不少了, 但不自己亲身试一下, 死不了这条心. 所以今天恰逢周六,
来用测评笔记本的思维测评一下两者的性能对比.(本人喜欢在51论坛发博客, 此论坛是一个笔记本分享体验的论坛)...
文章目录一、`for...in`, `for...of`, `for `和 `forEach` 循环的区别1.1、for…in和for…of的区别1.2、for1.3、for...in(主要用于遍历对象)1.4、`for...of`(`ES6`新增,利用了遍历对象内部的`iterator`接口,主要用于`遍历数组`)1.5、forEach(参数分别为value,index,数组体)二、Set 和 Map 结构三、while循环
一、for...in, for...of, for和 forEach 循环的区别
测试函数参数 index:数组索引 item:index索引对应的值 arr:遍历的数
传递 this 参数 箭头函数this传递无效
// 判断数组中是否有name等于app
let arr = [
{name:'app',cun:2},
{name:'wxxcx',cun:3},
{name:'app',cun:5}
arr...
目录1.for...in2. for...of3.for...in和for...of的区别4.可枚举属性,可迭代对象1)可枚举属性2)可迭代对象5.迭代器,生成器6.数组,伪数组7.map对象可以使用for...in吗?遍历map的方法!
1.for…in
for...in循环遍历的是可枚举属性(包括原型链上的可枚举属性)
var obj = {a:1,b:2,c:3};
for(let key in obj){
console.log(key); // a b c
使用for...in也可以
文章目录前言一、map1.简单数组2.对象数组3.修改简单数组内容4.修改对象数组内容二、forEach1.简单数组2.对象数组3.forEach() 的 continue 与 break
编码过程中一直分不清map和forEach的区别,闲下来,弄几个例子研究一下。
一、map
1.简单数组
const a = [ 5, 7, 10, ]
const mapA = a.map((item, index, arr) => {
console.log(item, i
在JavaScript中,有多种方法可以遍历数组,其中包括for循环、forEach方法和map方法。这些方法在不同场景下都有各自的优缺点,开发者需要根据实际情况来选择最适合自己的方法。本文将介绍这三种方法的使用和区别,希望对大家有所帮助。
1、for 循环
for 循环是 Js 中最常用的一个循环工具,经常用于数组的循环遍历。格式就是for(下标变量;循环长度,下标递加){}
let arr = [1,2,3];
for (let i=0; i<arr.length; i++){
console.log(i,arr[i])
// 0 1
// 1 2
// 2 3
2、for in 循环
for in 循环主要用于遍历普通对象,i 代表对象的 key 值,obj[i] 代表对应的 value,当用它来遍历数组时候,多数情况下也能
利用Javascript map(),reduce()和filter()数组方法可以帮助您编写更加声明性、流畅的风格代码。
而不是积累起来for循环和嵌套来处理列表和集合中的数据,您可以利用这些方法更好地将逻辑组织成功能的构建块,然后将它们链接起来以创建更可读和更易于理解的实现。
ES6还为我们提供了一些更好的数组方法,比如.find,.findIndex,.of和for…of循环!
数组循环...