如何使用ES6中的方法控制字符串执行顺序
浏览量:1549
时间:2024-01-27 17:56:53
作者:采采
ES6中引入了许多新特性,其中包括一些操作异步的方式。在这些方式中,Generator函数中的yield表达式可以用于暂停执行,而next()方法则可以用于继续执行。下面通过实例来说明如何使用这些方法。
定义并调用sayHi函数
首先,在已经创建好的JavaScript文件中,定义一个名为sayHi的函数,并在其中使用yield表达式,并返回一个值。代码示例如下:
function* sayHi() { yield 'H'; yield 'e'; yield 'l'; yield 'l'; yield 'o'; }
接着,我们可以通过调用该函数并赋值给一个变量sh,然后使用next()方法调用五次,并打印对应的结果。代码示例如下:
let sh sayHi(); console.log(()); // {value: "H", done: false} console.log(()); // {value: "e", done: false} console.log(()); // {value: "l", done: false} console.log(()); // {value: "l", done: false} console.log(()); // {value: "o", done: false}
在保存代码并打开浏览器查看结果时,可以发现前三次打印对应的字符,done的值为false;第四次返回的value为undefined,done的值为true;第五次的value为undefined,done的值也为true。
定义并调用computeSum函数
接下来,我们可以使用同样的方法来定义一个名为computeSum的函数,并在其中利用if语句和三目表达式返回一个计算表达式的结果。代码示例如下:
function* computeSum(flag) { let a 1; let b 2; if (flag) { yield a b; } else { yield a - b; } }
然后,我们可以将该函数赋值给一个变量cs,并使用next()方法调用四次,并打印对应的结果。代码示例如下:
let cs computeSum(true); console.log(()); // {value: 3, done: false} console.log(()); // {value: undefined, done: true} console.log(()); // {value: undefined, done: true} console.log(()); // {value: undefined, done: true}
当预览页面结果时,可能会发现出现报错。这是因为在函数中需要传入一个参数flag。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。
上一篇
Win11如何更改鼠标指针大小