js常用循环方式的比较

for in  VS  for of

1、for in 取 key; for of 取 value;

2、for of 只能用于数组遍历,for in还可以用于对象属性的遍历;

3、同是便利数组时,由于1属性,for in只能遍历数组元素的索引值,而for of可以遍历出所有数组元素;

4、for in能遍历数组上手动添加的值或者是该数组原型上的值,而for of只能遍历改数组的value;

5、for...of和for...in循环可以与break、continue配合使用,跳出循环,不能使用return,会报错;

6、无论是 for...in 还是 for...of 都不能遍历出 Symbol 类型的值,遍历 Symbol 类型的值需要用 Object.getOwnPropertySymbols() 方法;

forEach VS map VS $.each

1、forEach()返回值是undefined,不可以链式调用;

2、map()返回一个新数组,原数组不会改变;

3、没有办法终止或者跳出forEach()循环,除非抛出异常,使用break报错,使用return会跳出本次循环,继续下一次的循环;

4、$.each()方法规定为每个匹配元素规定运行的函数,return true跳过当过循环return false跳出所有循环;

5、参数只有$.each(key, value),其他均为value,key形式;

6、forEach中回调函数的最后一个参数是当前数组本身,自身的第二个函数是执行回调时,this的指向,默认是this;

7、map()必须要有返回值,否则返回的是包含被map数组长度的undefind值;

原文地址:https://www.cnblogs.com/xudandan/p/11925062.html

时间: 2025-01-17 09:42:50

js常用循环方式的比较的相关文章

js常用数组排序方式

第一种:sort()函数 function compare(v1,v2){ if(v1<v2){return -1;} else if (v1>v2) { return 1; }else {return 0;} } var values=[1,5,20,10,15,12]; values.sort(compare); console.log(values) //[1, 5, 10, 12, 15, 20]

【学习笔记】——原生js中常用的四种循环方式

一.引言 本文主要是利用一个例子,讲一下原生js中常用的四种循环方式的使用与区别: 实现效果: 在网页中弹出框输入0   网页输出"欢迎下次光临" 在网页中弹出框输入1   网页输出"查询中--" 在网页中弹出框输入2   网页输出"取款中--" 在网页中弹出框输入3   网页输出"转账进行中--" 在网页中弹出框输入其他字符   网页输出"无效按键" 四种循环: for循环 while循环 for  in

JS中循环的多种使用方式

JS中循环的遍历 在js中我们一般都使用for循环,但是这样的代码见的多了,总是感觉到审美疲劳,而且有更好的方式可以替代for循环,比如js的foreach和jquery的each. 我们看一行代码,这是一个多选框(html代码) <input type="checkbox" name="senceIds" lay-skin="primary" value='1' title='全自助黄金卡' checked /> <input

关于JS的循环和函数,由入门到放弃

1.条件语句if if 语句 if 语句是 ECMAScript 中最常用的语句之一,事实上在许多计算机语言中都是如此. if 语句的语法: if (condition) statement1 else statement2 其中 condition 可以是任何表达式,计算的结果甚至不必是真正的 boolean 值,ECMAScript 会把它转换成 boolean 值. 如果条件计算结果为 true,则执行 statement1:如果条件计算结果为 false,则执行 statement2.

js 常用正则表达式表单验证代码

js 常用正则表达式表单验证代码 js 常用正则表达式表单验证代码,以后大家就可以直接使用了. 正则表达式使用详解 简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下:测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式.这称为数据有效性验证.替换文本.可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字.根据模式匹配从字符串中提取一个子字符串.可以用来在文本或输入字段中

js常用工具类.

一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * 使用方式一: * var now = new Date(); * var nowStr = now.dateFormat("yyyy-MM-dd hh:mm:ss"); * 使用方式二: * new Date().dateFormat("yyyy年MM月dd日");

JS基础——循环很重要

介绍循环之前,首先要说一下同样很重要的if-else结构,switch-case结构 ①if-else结构 if(判断条件) { 条件为true时执行 } else{ 条件为false时执行 } ②if-else-if结构(阶梯if) if(条件一){ 条件一成立 } else if( 条件二){ 条件一不成立&&条件二成立 (else-if部分可以有多个) } else{ 条件一不成立&&条件二不成立 } ③嵌套if结构 结构写法 if(条件一){ 条件一成立 if(条件

最新的JavaScript核心语言标准&mdash;&mdash;ES6,彻底改变你编写JS代码的方式!【转载+整理】

原文地址 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和for-of循环 生成器 Generators 模板字符串 不定参数和默认参数 解构 Destructuring 箭头函数 Arrow Functions Symbols 集合 学习Babel和Broccoli,马上就用ES6 代理 Proxies ES6 说自己的宗旨是"凡是新加入的特性,势必已在其它语言中得到强有力的实用性证明."--TRUE!如果你大概浏览下 ES6 的新特性,事实上它

JS常用函数大全

免疫bodyclick方法 这个是个比较好的方法,一个弹出窗口,要设定在任何其他地方点击这个窗口会自动消失,但点这个窗口内部是没事的.那么就要用到这个方法了. // (对body点击产生效果免疫的部分, 阻止冒泡body事件) // 通过ID屏蔽->@args(event, targetID) function blockClickToBodyById(a,b){return b==$(a.target).prop("id")||$(a.target).parents("