JavaScript 幾種循環(huán)方式以及模塊化的總結(jié)
小小最近學(xué)習(xí)到了js的幾種循環(huán)方式,對(duì)這幾種循環(huán)方式進(jìn)行總結(jié)。以及對(duì)模塊化的相關(guān)知識(shí)點(diǎn)進(jìn)行總結(jié),
循環(huán)方式
循環(huán)方式分為好幾種循環(huán)方式,分別是for循環(huán),forEach循環(huán),map循環(huán),for..in循環(huán),for…of循環(huán),jquery的循環(huán)。
小小將會(huì)依次對(duì)這幾種循環(huán)方式進(jìn)行介紹。
一般數(shù)組遍歷循環(huán)
這里使用常用的數(shù)組遍歷方式。
一般來說,常用的數(shù)組遍歷如下
for (var index = 0; index < myArray.length; index++) {
console.log(myArray[index]);
}
這樣就完成了常規(guī)的循環(huán)遍歷。
在es5以后,添加了forEach,通過forEach進(jìn)行循環(huán)遍歷
myArray.forEach(function (value) {
console.log(value);
});
這里通過forEach函數(shù),完成對(duì)數(shù)組的遍歷。
缺點(diǎn): 這樣使用有個(gè)致命的缺點(diǎn),不能中斷循環(huán),即,不能使用break和return
for-in 循環(huán)遍歷
for-in循環(huán)是為專有對(duì)象進(jìn)行設(shè)置的,如下
var obj = {a:1, b:2, c:3};
循環(huán)結(jié)果如下
for (var prop in obj) {
console.log("obj." + prop + " = " + obj[prop]);
}
// 輸出:
// "obj.a = 1"
// "obj.b = 2"
// "obj.c = 3"
循環(huán)一個(gè)數(shù)組的時(shí)候,使用如下的方式進(jìn)行循環(huán)。
for (var index in myArray) { // 不推薦這樣
console.log(myArray[index]);
}
for-of 循環(huán)
數(shù)組
for-of循環(huán)可以遍歷數(shù)組等內(nèi)容
let iterable = [10, 20, 30];
for (let value of iterable) {
console.log(value);
}
// 10
// 20
// 30
此時(shí)完成了對(duì)數(shù)組的遍歷。
字符串
此時(shí)還可以遍歷一個(gè)字符串
let iterable = "boo";
for (let value of iterable) {
console.log(value);
}
// "b"
// "o"
// "o"
循環(huán)一個(gè)Map
還可以循環(huán)一個(gè)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]
循環(huán)一個(gè)set
還可以循環(huán)一個(gè)set
let iterable = new Set([1, 1, 2, 2, 3, 3]);
for (let value of iterable) {
console.log(value);
}
// 1
// 2
// 3
以上是基本的循環(huán)
模塊化
對(duì)js的模塊化進(jìn)行介紹
以前,js文件在一個(gè)文件里,使用js的模塊化,可以實(shí)現(xiàn)對(duì)多個(gè)js文件可以進(jìn)行分離,實(shí)現(xiàn)工程化
這里介紹最常用的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!
這里分為兩個(gè)文件,分別為test.js和xxx.js test.js定義了幾個(gè)變量,并導(dǎo)出了
myName, myAge, myfn, myClass
等,幾個(gè)變量。
使用import命令,導(dǎo)入了一些變量,進(jìn)入到命名空間,使用console.log可以進(jìn)行讀取
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在這里,實(shí)現(xiàn)重命名的方式,實(shí)現(xiàn)導(dǎo)入的時(shí)候,命名的更改。
import { myName as name1 } from "./test1.js";
import { myName as name2 } from "./test2.js";
console.log(name1);// Tom
console.log(name2);// Jerry
這些就完成了基本的導(dǎo)入和導(dǎo)出
以上就是JavaScript 幾種循環(huán)方式以及模塊化的總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于JavaScript 循環(huán)方式以及模塊化的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
深入理解JavaScript系列(27):設(shè)計(jì)模式之建造者模式詳解
這篇文章主要介紹了深入理解JavaScript系列(27):設(shè)計(jì)模式之建造者模式詳解,建造者模式可以將一個(gè)復(fù)雜對(duì)象的構(gòu)建與其表示相分離,使得同樣的構(gòu)建過程可以創(chuàng)建不同的表示,需要的朋友可以參考下2015-03-03
JavaScript 正則表達(dá)式中g(shù)lobal模式的特性
這篇文章主要介紹了JavaScript 正則表達(dá)式中g(shù)lobal模式的特性 的相關(guān)資料,需要的朋友可以參考下2016-02-02
基于BootStrap實(shí)現(xiàn)局部刷新分頁實(shí)例代碼
這篇文章主要介紹了基于BootStrap實(shí)現(xiàn)局部刷新的分頁的相關(guān)資料,非常不錯(cuò),代碼簡單易懂,具有參考價(jià)值,需要的朋友可以參考下2016-08-08
javascript 實(shí)現(xiàn)簡單的table排序及table操作練習(xí)
在這個(gè)列子中,練習(xí)了table的操作,主要有:tBodies、rows、cells,還有有關(guān)數(shù)組的排序方法:sort,按興趣的朋友可以研究下2012-12-12
Web?Components使用生命周期回調(diào)函數(shù)實(shí)例詳解
這篇文章主要為大家介紹了Web?Components使用生命周期回調(diào)函數(shù)實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10

