首页 > TAG信息列表 > ecmascript-2017

javascript-调用带有默认参数的异步函数作为用于检查是否同步的参数的函数?

我在调用时使用异步函数和默认参数进行评估. 使用默认参数时,我使用一个函数来检查是否提供了值. function mandatory(paramName) { throw new Error(`Missing parameter: ${paramName}`) } async function foo({ a, b = mandatory('b') }) { return Promise.resolve(b)

javascript-等待异步函数导致未定义

我在使用Node进行异步/等待时遇到了麻烦.当我尝试这个: function Read_Json_File() { fs.readFile('import.json','utf-8',(err, data) => { if (err) throw err; json_data = JSON.parse(data); return json_data; }); } async function r

javascript-承诺异步/等待

我有以下代码. class DB { constructor(client) { this.client = client; } } export default function store() { return new Promise((resolve, reject) => { pg.connect(process.env.DATABASE_URL, client => { client.query('CREATE TABLE x(n

javascript-除非传递错误,否则为什么.catch()在异步函数的循环内不捕获Promise构造函数内的reject()?

给定 (async () => { const p = await new Promise((resolve, reject) => setTimeout(() => { reject(new Error(1)) }, Math.floor(Math.random() * 1000))); return p})() .then(data => console.log(data)) .catch(err => console.error(err)); 错误()记

javascript – 异步函数 – 等待不等待承诺

我正在努力学习async-await.在这段代码中 – const myFun = () => { let state = false; setTimeout(() => {state = true}, 2000); return new Promise((resolve, reject) => { setTimeout(() => { if(state) { resolve(&

javascript – ES8立即调用异步函数表达式

我没有看到这些构造使用太多,但我发现自己编写它们以在通常不会返回promise的函数中使用async / await,例如 chan.consume(queue, (msg) => { this.pendingMsgs++; // executed immediately (async () => { await this.handleMessage(msg); this.pendingMsgs--; i

javascript – ES2017 – Async vs. Yield

我对当前关于添加异步函数和关键字等待下一个EcmaScript的讨论感到困惑. 我不明白为什么有必要在function关键字之前使用async关键字. 从我的角度来看,await关键字等待生成器或promise的结果,函数的返回应该足够了. await应该可以在普通函数和生成器函数中使用,而不需要额外的异步

javascript – 在Array#map()中异步/等待

我用这段代码得到编译时错误: const someFunction = async (myArray) => { return myArray.map(myValue => { return { id: "my_id", myValue: await service.getByValue(myValue); } }); }; 错误信息是: await is a reser

javascript – 如何“等待”回调回调?

使用简单回调时,例如下面的示例: test() { api.on( 'someEvent', function( response ) { return response; }); } 如何将函数更改为使用async / await?具体来说,假设’someEvent’保证只被调用一次,我希望函数test是一个异步函数,在执行回调之前不会返回,例如: async test

javascript – 如何在顶级使用async / await?

我一直在浏览async / await,经过几篇文章后,我决定自己测试一下.但是,我似乎无法理解为什么这不起作用: async function main() { var value = await Promise.resolve('Hey there'); console.log('inside: ' + value); return value; } var text = main(); consol

javascript – 对Array.map使用async await

给出以下代码: var arr = [1,2,3,4,5]; var results: number[] = await arr.map(async (item): Promise<number> => { await callAsynchronousOperation(item); return item + 1; }); 这会产生以下错误: TS2322: Type ‘Promise<number>[]’ is not a

一般循环中的javascript async / await

我想让这个例子https://stackoverflow.com/a/33585993/1973680同步. 这是正确的实施吗? let times= async (n,f)=>{while(n-->0) await f();} times(5,()=> myfunc([1,2,3],err => err) ) myfunc本身就是一个异步函数,等待各种其

javascript – 为什么`async / await`在我的情况下不起作用?

我读过async / await,但我有一个关键问题.首先,我解释一个旧的例子,以显示我的问题的基础,然后我问我的确切问题. 大家都知道: console.log('1'); console.log('2'); console.log('3'); // Ex: 123 这很简单,但在下面的情况下: console.log('1'); setTimeout(()=>{ console.lo

javascript – 如何在维护执行顺序的同时减少异步等待关键字的使用

async function foo() { await this.getAsync(); await this.getAsyncTwo(); await this.getAsyncThree(); await this.getAsyncFour(); } 看看foo有多个await调用,有没有办法简单地保持执行顺序? 我希望有可能写出类似的东西 async function foo() { await this.g

javascript – 链接异步函数?

let val = 0; async function first() { console.log('1a', val); second(); console.log('1b', val); } async function second() { console.log('2a', val); third(); console.log('2b', val); } async

我可以使用async / await等待JavaScript中的多个事件吗?

考虑以下情况: const waitForEvent = async (api) => { api.on('eventOne', () => { return 'eventOne'; }) api.on('eventTwo', () => { return 'eventTwo'; }) api.on('eventThree', () =>

javascript – Promise.all()是执行函数数组还是在将它们放入数组时执行?

由于await在Array.map或Array.reduce中不起作用,您可以执行以下操作,还是将其视为滥用Promise.all?通常,等待neo4j.session(). // inside a function const QUERY = 'MATCH (n) RETURN n' const argsArray = [{ sample: 'sadf' }, { sample: 'sadf' }, { sample: 'sadf

javascript – 捕获地理位置错误 – 异步等待

如何捕获地理位置特定错误以通知用户他们必须打开地理位置? catch记录了一个名为PositionError的错误,如Mozilla文档“https://developer.mozilla.org/en-US/docs/Web/API/PositionError”中所述. *注意:我的代码没有捕获错误,它只显示: Uncaught (in promise) ReferenceError: Posit