相关疑难解决方法(0)

迭代对象属性

var obj = {
    name: "Simon",
    age: "20",
    clothing: {
        style: "simple",
        hipster: false
    }
}

for(var propt in obj){
    console.log(propt + ': ' + obj[propt]);
}
Run Code Online (Sandbox Code Playgroud)

变量如何propt表示对象的属性?它不是内置方法或属性.为什么它会出现在对象中的每个属性?

javascript loops object

1904
推荐指数
24
解决办法
122万
查看次数

使用async/await和forEach循环

asyncawait循环中使用是否有任何问题?我正在尝试循环遍历文件数组和forEach每个文件的内容.

import fs from 'fs-promise'

async function printFiles () {
  const files = await getFilePaths() // Assume this works fine

  files.forEach(async (file) => {
    const contents = await fs.readFile(file, 'utf8')
    console.log(contents)
  })
}

printFiles()
Run Code Online (Sandbox Code Playgroud)

这段代码确实有效,但这可能会出错吗?我有人告诉我你不应该使用await这样的高阶函数,所以我只是想问一下这是否有任何问题.

javascript node.js promise async-await ecmascript-2017

864
推荐指数
24
解决办法
38万
查看次数

TypeScript,通过字典循环

在我的代码中,我有几个字典(如此处所示),它是String索引的.由于这是一个临时类型,我想知道是否有任何建议我将如何能够遍历每个键(或值,无论如何我都需要键).任何帮助赞赏!

myDictionary: { [index: string]: any; } = {};
Run Code Online (Sandbox Code Playgroud)

javascript html5 typescript

150
推荐指数
5
解决办法
22万
查看次数

Angular 2:迭代反应式表单控件

我想要markAsDirty一个内部的所有控件FormGroup.

angular

73
推荐指数
7
解决办法
6万
查看次数

使用switch时,tslint抱怨"语句必须使用if语句进行过滤"

可以说我有以下方法:

getErrorMessage(state: any, thingName?: string) {
    const thing: string = state.path || thingName;
    const messages: string[] = [];
    if (state.errors) {
        for (const errorName in state.errors) {
            switch (errorName) {
                case 'required':
                    messages.push(`You must enter a ${thing}`);
                    break;
                case 'minlength':
                    messages.push(`A ${thing} must be at least ${state.errors['minlength'].requiredLength}characters`);
                    break;
                case 'pattern':
                    messages.push(`The ${thing} contains illegal characters`);
                    break;
                case 'validateCardNumberWithAlgo':
                    messages.push(`Card doesnt pass algo`);
                    break;
            }
        }
    }
    return messages;
}
Run Code Online (Sandbox Code Playgroud)

我跑的时候

ng lint
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

for(... in ...)语句必须使用if语句进行过滤

看一下类似的问题,我认为答案不适用于我的情况.所有switch语句都在if-else-if阶段的类别中.

tslint应该将switch语句视为if语句的形式,但它没有?!

typescript tslint angular-cli angular

21
推荐指数
2
解决办法
2万
查看次数