JavaScript 几种循环方式以及模块化的总结


Posted in Javascript onSeptember 03, 2020

小小最近学习到了js的几种循环方式,对这几种循环方式进行总结。以及对模块化的相关知识点进行总结,

循环方式

循环方式分为好几种循环方式,分别是for循环,forEach循环,map循环,for..in循环,for…of循环,jquery的循环。

小小将会依次对这几种循环方式进行介绍。

一般数组遍历循环

这里使用常用的数组遍历方式。

一般来说,常用的数组遍历如下

for (var index = 0; index < myArray.length; index++) {
 console.log(myArray[index]);
}

这样就完成了常规的循环遍历。

在es5以后,添加了forEach,通过forEach进行循环遍历

myArray.forEach(function (value) {
 console.log(value);
});

这里通过forEach函数,完成对数组的遍历。

缺点: 这样使用有个致命的缺点,不能中断循环,即,不能使用break和return

for-in 循环遍历

for-in循环是为专有对象进行设置的,如下

var obj = {a:1, b:2, c:3};

循环结果如下

for (var prop in obj) {
 console.log("obj." + prop + " = " + obj[prop]);
}

// 输出:
// "obj.a = 1"
// "obj.b = 2"
// "obj.c = 3"

循环一个数组的时候,使用如下的方式进行循环。

for (var index in myArray) {  // 不推荐这样
 console.log(myArray[index]);
}

for-of 循环

数组

for-of循环可以遍历数组等内容

let iterable = [10, 20, 30];

for (let value of iterable) {
 console.log(value);
}
// 10
// 20
// 30

此时完成了对数组的遍历。

字符串

此时还可以遍历一个字符串

let iterable = "boo";

for (let value of iterable) {
 console.log(value);
}
// "b"
// "o"
// "o"

循环一个Map

还可以循环一个Map

let iterable = new Map([["a", 1], ["b", 2], ["c", 3]]);

for (let [key, value] of iterable) {
 console.log(value);
}
// 1
// 2
// 3

for (let entry of iterable) {
 console.log(entry);
}
// [a, 1]
// [b, 2]
// [c, 3]

循环一个set

还可以循环一个set

let iterable = new Set([1, 1, 2, 2, 3, 3]);

for (let value of iterable) {
 console.log(value);
}
// 1
// 2
// 3

以上是基本的循环

模块化

对js的模块化进行介绍

以前,js文件在一个文件里,使用js的模块化,可以实现对多个js文件可以进行分离,实现工程化

这里介绍最常用的es6模块化

export 与 import

这里介绍export和import这两种方式。

文件如下

/*-----export [test.js]-----*/
let myName = "Tom";
let myAge = 20;
let myfn = function(){
  return "My name is" + myName + "! I'm '" + myAge + "years old."
}
let myClass = class myClass {
  static a = "yeah!";
}
export { myName, myAge, myfn, myClass }

/*-----import [xxx.js]-----*/
import { myName, myAge, myfn, myClass } from "./test.js";
console.log(myfn());// My name is Tom! I'm 20 years old.
console.log(myAge);// 20
console.log(myName);// Tom
console.log(myClass.a );// yeah!

这里分为两个文件,分别为test.js和xxx.js test.js定义了几个变量,并导出了

myName, myAge, myfn, myClass

等,几个变量。

使用import命令,导入了一些变量,进入到命名空间,使用console.log可以进行读取

console.log(myfn());// My name is Tom! I'm 20 years old.
console.log(myAge);// 20
console.log(myName);// Tom
console.log(myClass.a );// yeah!

as

as在这里,实现重命名的方式,实现导入的时候,命名的更改。

import { myName as name1 } from "./test1.js";
import { myName as name2 } from "./test2.js";
console.log(name1);// Tom
console.log(name2);// Jerry

这些就完成了基本的导入和导出

以上就是JavaScript 几种循环方式以及模块化的总结的详细内容,更多关于JavaScript 循环方式以及模块化的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
懒就要懒到底——鼠标自动点击(含时间判断)
Feb 20 Javascript
jquery tab插件制作实现代码
Jun 22 Javascript
JavaScript去掉数组中的重复元素
Jan 13 Javascript
IE与FireFox中的childNodes区别
Oct 20 Javascript
jquery移除、绑定、触发元素事件使用示例详解
Apr 10 Javascript
javascript中attachEvent用法实例分析
May 14 Javascript
javascript拖拽应用实例(二)
Mar 25 Javascript
浅析javascript中的Event事件
Dec 09 Javascript
基于bootstrap按钮式下拉菜单组件的搜索建议插件
Mar 25 Javascript
javaScript canvas实现(画笔大小 颜色 橡皮的实例)
Nov 28 Javascript
javaScript中indexOf用法技巧
Nov 26 Javascript
Vue.js中使用Vuex实现组件数据共享案例
Jul 31 Javascript
Vuejs通过拖动改变元素宽度实现自适应
Sep 02 #Javascript
Vue Object.defineProperty及ProxyVue实现双向数据绑定
Sep 02 #Javascript
Vue 组件的挂载与父子组件的传值实例
Sep 02 #Javascript
vue中的.$mount('#app')手动挂载操作
Sep 02 #Javascript
vue中提示$index is not defined错误的解决方式
Sep 02 #Javascript
解决vue组件没显示,没起作用,没报错,但该显示的组件没显示问题
Sep 02 #Javascript
vue或react项目生产环境去掉console.log的操作
Sep 02 #Javascript
You might like
为什么那些咖啡爱好者大多看不上连锁咖啡店?
2021/03/06 咖啡文化
一个基于PDO的数据库操作类
2011/03/24 PHP
最新用php获取谷歌PR值算法,附上php查询PR值代码示例
2011/12/25 PHP
深入apache host的配置详解
2013/06/09 PHP
php缩放图片(根据宽高的等比例缩放)实例介绍
2013/06/09 PHP
PHP结合JQueryJcrop实现图片裁切实例详解
2014/07/24 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
2019/10/21 PHP
php实现通过stomp协议连接ActiveMQ操作示例
2020/02/23 PHP
PHP使用POP3读取邮箱接收邮件的示例代码
2020/07/08 PHP
有一段有意思的代码-javascript现实多行信息
2007/08/26 Javascript
Javascript日期对象的dateAdd与dateDiff方法
2008/11/18 Javascript
指定位置如果有图片显示图片,无图片显示广告的JS
2010/06/05 Javascript
使用ExtJS技术实现的拖动树结点
2010/08/05 Javascript
jquery带翻页动画的电子杂志代码分享
2015/08/21 Javascript
JS中的eval 为什么加括号
2016/04/13 Javascript
JavaScript对象创建模式实例汇总
2016/10/03 Javascript
Python中设置变量作为默认值时容易遇到的错误
2015/04/03 Python
利用python实现简单的循环购物车功能示例代码
2017/07/05 Python
Python 实现购物商城,含有用户入口和商家入口的示例
2017/09/15 Python
numpy.random.shuffle打乱顺序函数的实现
2019/09/10 Python
Django-xadmin+rule对象级权限的实现方式
2020/03/30 Python
canvas绘制文本内容自动换行的实现代码
2019/01/14 HTML / CSS
HTML5中drawImage用法分析
2014/12/01 HTML / CSS
澳大利亚免息网上购物:Shop Zero
2016/09/17 全球购物
Pam & Gela官网:美国性感前卫女装品牌
2018/07/19 全球购物
新西兰便宜隐形眼镜购买网站:QUICKLENS New Zealand
2019/03/02 全球购物
纽约州一群才华横溢的金匠制作而成:Hearth Jewelry
2019/03/22 全球购物
什么是三层交换,说说和路由的区别在那里
2014/09/01 面试题
教师绩效考核方案
2014/01/21 职场文书
创业计划实施的7大步骤
2014/02/05 职场文书
致400米运动员广播稿
2014/02/07 职场文书
人力资源主管职责范本
2014/03/05 职场文书
创业女性典型材料
2014/05/02 职场文书
纪念九一八事变演讲稿:勿忘国耻
2014/09/14 职场文书
企业承诺书格式范文
2015/04/28 职场文书
python基于tkinter制作无损音乐下载工具
2021/03/29 Python