第一次写文章有点小激动呢 扯一扯js for in ForEach

for in 

for (变量 in 对象)
{
    在此执行代码
}

语句用于对数组或者对象的属性进行循环操作。

for ... in 循环中的代码每执行一次,就会对数组的元素或者对象的属性进行一次操作。

由于数组也是对象所以可以理解为对对象操作。

var person={fname:"John",lname:"Doe",age:25}; 
for (x in person)
{
    txt=txt + person[x];
}

注意如果有原型属性,原型属性也会被访问

Object.prototype.bar = 10;// 修改Object.prototype
var obj={"name":"wjy","age":26,"sex":"female"};//定义一个object对象
var keys=[];//定义一个数组用来接受key
var values=[];//定义一个数组用来接受value
for(var key in obj){
  keys.push(key);
  values.push(obj[key]);//取得value
}
alert("keys is :"+keys+" and values is :"+values);

!!如果不想被访问原型

if (obj.hasOwnProperty(key) === true){
  keys.push(key);
  values.push(obj[key]);
}

forEach()

概述: 方法让数组的每一项都执行一次给定的函数。

语法array.forEach(callback[currentValue,index,array,thisArg]);

 callback:回调函数,常规意义就是当函数本身执行完毕,再去执行参数上的回调函数。就是function(currentValue,index,thisArg){}

参数

  1.   currentValue        当前项,遍历中数组中正在被处理的数组项。作用:方便函数内使用搞事情。
  2.   index                    当前项目的下标呗。      作用:同上。
  3.   array                    重新给数组一个代号方便内部使用吧。
  4.  thisArg                  修改内部值的指向。

描述

  forEach 方法按升序为数组中含有效值的每一项执行一次callback 函数,那些已删除(使用delete方法等情况)或者从未赋值的项将被跳过。

特点

  简单说不出错,无法中断,切保持开始状态。

  forEach 遍历的范围在第一次调用 callback 前就会确定。调用forEach 后添加到数组中的项不会被 callback 访问到。如果已经存在的值被改变,则传递给 callback 的值是 forEach 遍历到他们那一刻的值。已删除的项不会被遍历到。

示例

  1.遍历数组中的数,模拟一个数组。  

  foreach形式

  function logArrayElements(element, index, array) {

          console.log("a[" + index + "] = " + element);
    }
    [2, 5, 9].forEach(logArrayElements); 正常for形式

    var arr = [2,5,9];
    for(var i=0; i<arr.length;i++){
      console.log(‘arr[‘+i+‘]=‘+arr[i]);
    }

实例2

  var arr=[{a:1},{}];

  arr.forEach(function(item,idx){
    item.b=idx;
  }); 结果:B.[{a:1,b:0},{b:1}] 
时间: 2024-10-19 17:59:17

第一次写文章有点小激动呢 扯一扯js for in ForEach的相关文章

第一次写博客,关于前端开发deMVC在js中的应用

对前端MVC MVC分别是model.view.controller的缩写,模型.视图.控制器.这些更加偏向于后台,在以前MVC是只属于后台的.当然随着技术的进步,前端的大牛们将后台的一些东西应用于前端,MVC就是其中之一.  走进MVC MVC三者关系图: 图片有点简单,请谅解,是第一次写,而且时间有点紧!!!  View视图 首先简单介绍一下它的工作原理与承担的业务.首先在这里我们先介绍View,它就是前端的视图界面,负责与用户的交互和拉取数据,如果说的简单点,它就是HTML文件: <!DO

第一次写小小小小小游戏, 扫雷

想写扫雷的起因: 前两天上机课做完作业同学没事干, 跟我说:学校的电脑怎么连扫雷都没有啊? 当时我就跟她说 等我写一个给你玩! 然后, 就给自己挖下了这个坑. 现在正好快要期末考了, 这几天在努力复习高数, 好害怕挂啊, 所以扫雷这个坑就一点点填,八成是要等考完试之后再填完. 写这个扫雷跟竞赛完全没有关系, 就当是提高自己代码能力吧, 学习算法之余也搞点好玩的. 本人也不是经常玩扫雷, 不知道自己写的机制和真正的扫雷机制一不一样, 还顺便去百度了一下, 感觉差不多. 游戏呢就是一个简单的控制台,

手把手教你写一个RN小程序!

时间过得真快,眨眼已经快3年了! 1.我的第一个App 还记得我14年初写的第一个iOS小程序,当时是给别人写的一个单机的相册,也是我开发的第一个完整的app,虽然功能挺少,但是耐不住心中的激动啊,现在我开始学react native,那么现在对于react native也算是有所了解了,就用网上的接口开发一个小程序,现在带大家来写这个程序!接口是用看知乎的API,简简单单的只有get,可以从这里入门,也算是带大家入门吧,过后我会把源代码放在我的github上,前期项目肯定特别简陋,后面慢慢来优

《每日一博》——第一次写博客

第一次写博客,好紧张啊!说起来写博客的原因是为了让自己的学习经历以及过程能有更多的人帮忙讨论讨论(这个理由应该挺充分的吧!)---- 额,还是和大家介绍一下我自己吧! 我的网名是Tenma,真实姓名暂时不便透露,你们也可以叫我天马或者小马都可以! 我的兴趣便是计算机技术,现在也在学这方面的----希望能和更多志同道合的朋友交流交流---- <每日一博>--第一次写博客,码迷,mamicode.com

写代码与写文章

写代码和写文章非常相似,都利用电脑工作,都码字.判断一段代码好不好,能考评的也就是代码的格式,风格还有算法了,下面从这些方面来看看写代码和写文章是多么的相似. 格式 在写代码里主要指缩进,空格,空行,对齐等文本排版形式,这个是最最容易到达的一个代码好的指标,好多的IDE环境都是一键自动格式化.好的代码格式就像好的文章一样排版精美,段落清晰.代码的格式美观是形式美,是外在美. /** 差的格式举例 **/ function swap(a, b) { var c=a; a=b; b=c; } /**

第一次写博客

2019-01-17 18:18:42 第一次写博客,记录一下. 为什么写博客? 主要是想记录一下自己的学习生活之类的吧.上一次写类似的东西还要追溯到高中吧,那时候QQ空间好像很火,我自己写了20多篇文章,时不时回忆一下高中的生活.说实话,高中应该是人生中最美好的一段时期吧.想想那个时候的主要矛盾还是在学习上吧,别的什么事情都不需要操心.年轻真好啊! 然后另一个目的就是可以通过博客来记录吧,应为我感觉好多东西看似会了,睡一觉起来就忘了,所以如果能记下来的话可以回顾嘛.然后把我遇到的一些安装和学习

第一次写,python爬虫图片,操作excel。

第一次写博客,其实老早就注册博客园了,有写博客的想法,就是没有行动,总是学了忘,忘了丢,最后啥都没有,电脑里零零散散,东找找,西看看,今天认识到写博客的重要性. 最近闲着看了潭州教育的在线直播课程,颇受老师讲课实用有感.只作为自己笔记学习,我们都知道学习一门编程都是先照抄,在创作.这里完全按照老师讲解,照抄作为学习. 一.Python抓取豆瓣妹子图. 工具:python3.6.0;bs4.6.0;xlwt(1.2.0)需要版本对应,之前就安装了bs4但是运行的时候提示版本不对应.可以在线升级:p

用Notepad++写python的小配置

在上一家公司的时候,写python,用的emeditor,由于是公司的电脑,都是配置好的,写python还是比较顺手,现在离开后,一直用notepad++,想转到notepad++来写python的代码,遂研究了下,配置了自己的Notepad++的python环境. 首先你要安装python.notepad++,这个去官网下载安装就行,不多赘言. 安装完基本工具后,开始配置Notepad++了. 1.点击“运行”-“运行”,弹出一个对话框,输入命令 cmd /k C:\Python27\pyth

起点.第一次写的东西.

这里记录着人生第一次写的东西..还有很多不懂的东西.以后会做的更好.<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title>用户登录</title></head><body background="未标题-3 - 副本.jpg"><!--background 背景图片