js for 循环示例
//for 循环
var array = [,,,,,,];
for (var i = ; i < array.length; i++) {
console.log(i,array[i]);
}
//for in
var array = [,,,,,,];
for(let index in array) {
console.log(index,array[index]);
};
//forEach
var array = [,,,,,,];
array.forEach(v=>{
console.log(v);
});
//或者
var array = [,,,,,,];
array.forEach(function(v){
console.log(v);
});
//for in 循环对象
var A = {a:,b:,c:,d:"hello world"};
for(let k in A){
console.log(k,A[k]);
}
//在ES6中,增加了一个for of循环
var array = [,,,,,,];
for(let v of array) {
console.log(v);
}
let s = "helloabc";
for(let c of s) {
console.log(c);
}
//Map,Set,for of
var set = new Set();
set.add("a").add("b").add("d").add("c");
var map = new Map();
map.set("a",).set("b",).set(,);
for (let v of set) {
console.log(v);
}
console.log("--------------------");
for(let [k,v] of map) {
console.log(k,v);
}
//原生javascript遍历
let array1 = ['a','b','c'];
for (let i = ;i < array1.length;i++){
console.log(array1[i]); // a b c
}
//forEach() 方法对数组的每个元素执行一次提供的函数。总是返回undefined;
//map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。返回值是一个新的数组;
var array1 = [,,,,];
var x = array1.forEach(function(value,index){
console.log(value); //可遍历到所有数组元素
return value +
});
console.log(x); //undefined 无论怎样,总返回undefined var y = array1.map(function(value,index){
console.log(value); //可遍历到所有数组元素
return value +
});
console.log(y); //[11, 12, 13, 14, 15] 返回一个新的数组
// 因为迭代的顺序是依赖于执行环境的,所以数组遍历不一定按次序访问元素。 因此当迭代那些访问次序重要的 arrays 时用整数索引去进行 for 循环
let array2 = ['a','b','c']
let obj1 = {
name : 'lei',
age : ''
} for(variable in array2){ //variable 为 index
console.log(variable ) //0 1 2
} for(variable in obj1){ //variable 为属性名
console.log(variable) //name age
}
//for...in循环会遍历一个object所有的可枚举属性。
//for...of会遍历具有iterator接口的数据结构
//for...in 遍历(当前对象及其原型上的)每一个属性名称,而 for...of遍历(当前对象上的)每一个属性值
Object.prototype.objCustom = function () {};
Array.prototype.arrCustom = function () {}; let iterable = [, , ];
iterable.foo = "hello"; for (let i in iterable) {
console.log(i); // logs 0, 1, 2, "foo", "arrCustom", "objCustom"
}
for (let i of iterable) {
console.log(i); // logs 3, 5, 7
}
//js 实现获取对象所有键名(key)的方法
var jsonObject1 = {
"name": "xiaoming",
"age":
};
var keys1 = [];
for (var p1 in jsonObject1) {
if (jsonObject1.hasOwnProperty(p1))
keys1.push(p1);
}
console.log(keys1); //name,age
//js 实现获取对象所有键名(key)的方法
Object.prototype.test = "I am test";
var jsonObject = {
"name": "xiaoming",
"age":
},
keys = [];
for (var p in jsonObject)
keys.push(p);
console.log(keys); //name,age,test
//提取对象的key值
checklist=[{"sensor_board":{"cur":"1.0.0","new":"1.0.1"}},{"sensor_board":{"cur":"1.0.0","new":"1.0.1"}}]
keys=[]
for (var p in checklist[]){
keys.push(p);
}
console.log(keys)
js for 循环示例的更多相关文章
- Node.js 事件循环(Event Loop)介绍
Node.js 事件循环(Event Loop)介绍 JavaScript是一种单线程运行但又绝不会阻塞的语言,其实现非阻塞的关键是“事件循环”和“回调机制”.Node.js在JavaScript的基 ...
- JS基础——循环很重要
介绍循环之前,首先要说一下同样很重要的if-else结构,switch-case结构 ①if-else结构 if(判断条件) { 条件为true时执行 } else{ 条件为false时执行 } ②i ...
- jquery.validate.min.js 用法方法示例
页面html 代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...
- Node.js事件循环
Node JS是单线程应用程序,但它通过事件和回调概念,支持并发. 由于Node JS每一个API是异步的,作为一个单独的线程,它使用异步函数调用,以保持并发性.Node JS使用观察者模式.Node ...
- 【JS中循环嵌套常见的六大经典例题+六大图形题,你知道哪几个?】
首先,了解一下循环嵌套的特点:外层循环转一次,内层循环转一圈. 在上一篇随笔中详细介绍了JS中的分支结构和循环结构,我们来简单的回顾一下For循环结构: 1.for循环有三个表达式,分别为: ①定义循 ...
- js事件循环机制辨析
对于新接触js语言的人来说,最令人困惑的大概就是事件循环机制了.最开始这也困惑了我好久,花了我几个月时间通过书本,打代码,查阅资料不停地渐进地理解他.接下来我想要和大家分享一下,虽然可能有些许错误的 ...
- js 各种循环遍历
js 各种循环遍历(表格比较) 遍历方法 能否遍历数组 能否遍历对象 备注 for 能 不能 for in 能(有诸多缺点) 能 为遍历对象而设计的,不适用于遍历数组 forEach 能 不能 bre ...
- 6、Node.js 事件循环
#########################################################################################Node.js 事件循 ...
- js for循环的陷阱
☞问题概述 一页面有三个按钮,点击提示相应内容.相应内容已从后台获取,并转化成json数组. var content = ["提示1", "提示2", &quo ...
随机推荐
- [INS-40724] No locally defined network interface matches the SCAN subnet.
环境如下 OS:AIX 7.1 DB:11.2.0.4 2节点RAC 报错信息 在安装11.2.0.4 RAC的时候报如下错误 INS-40724] No locally defined networ ...
- VPS安全配置
VPS安全配置 购买VPS后重装操作系统,以windows server 2008为例. 1 登录服务器 重装操作系统后,第一时间登录服务器,迅速进行安全配置. VPN-->Remote Des ...
- ubuntu默认使用python2,更改默认使用python3
直接执行这两个命令即可: sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100 sudo upd ...
- (.NET高级课程笔记)反射总结
反射总结 1.dll-IL-matadata-反射 2.反射加载dll,获取module.类.方法.特性 3.反射创建对象:反射+简单工厂+配置文件 4.反射调用实例方法.静态方法.重载方法.私有方法 ...
- H.264学习--1
1.宏块(Macro Block):一个编码图像首先要划分成多个块(4x4 像素)才能进行处理,显然宏块应该是整数个块组成,通常宏块大小为 ...
- py001
pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple -------------------------------- ...
- 浅谈Linux文件与目录权限
作为一个程序员,在工作的过程中或多或少都会接触都Linux,那么对于权限这块肯定有所了解,今天有空想谈谈觉得比较绕的权限问题,即文件权限与目录权限 1.文件权限,对于文件权限这个是比较简单的,也很容易 ...
- Javascript学习-简单测试环境
Javascript学习-简单测试环境 在<JavaScript忍者秘籍>2.4测试条件基础知识中,作者给出了一个精简版的assert和assert组的实现,对于初学者而言,这无疑是一个很 ...
- js数组创建两种方法
一.数组直接量形式创建数组 var arr=[];//空数组 ,,,,,]; ,,,],{x:,y:}]; ; ,x+,x+]; console.log(arr3); //[1,3,3,4] ,,]; ...
- 2018-2019-2 20175205实验一《Java开发环境的熟悉》实验报告
2018-2019-20175205实验一<Java开发环境的熟悉>实验报告 实验步骤 (一)命令行下Java程序开发 在Linux下运行结果: 在IDEA中运行结果: (二)IDEA下J ...