Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript TypeScript:在对象中查找键/值(列表理解?)_Javascript_Typescript_Angular - Fatal编程技术网

Javascript TypeScript:在对象中查找键/值(列表理解?)

Javascript TypeScript:在对象中查找键/值(列表理解?),javascript,typescript,angular,Javascript,Typescript,Angular,如何在TypeScript中查找索引==2 myObj = { policy : { index: 1, page : "/summer" }, purchase : { index: 2, page : "/sun" } } 例如 如何在JS或TS中更有效地执行此操作?Javascript方面,我会使用以下函数: Object.keys(myObj).f

如何在TypeScript中查找
索引==2

myObj = {
  policy : {
            index: 1,
            page : "/summer"
         },
  purchase : {
            index: 2,
            page : "/sun"
         }
}
例如


如何在JS或TS中更有效地执行此操作?

Javascript方面,我会使用以下函数:

Object.keys(myObj).forEach(key => {
    if (myObj[key].index === 2) {
        console.log("Found.");
    }
});
因为它不再需要检查myObj.hasOwnProperty(key)

如果要在找到搜索时停止搜索:

Object.keys(myObj).some(key => myObj[key].index === 2);

使用
数组。查找

Object.keys(myObj).find(k => myObj[k].index === 2)

这将返回匹配发生的密钥。

与您在JST中的操作相同,这非常令人失望。所以“TypeScript从CoffeeScript中拿走了很多”的论点是一个公然的谎言?谁说过TypeScript从CoffeeScript中拿走了很多?这是一个javascript超集。如果说它更接近C#:P您始终可以添加lodash并使用它(使用类型推断)。:)“TypeScript从CoffeeScript中获得了很多”。TS是javascript超集,为什么它会采用完全不同的语言,比如coffeescript?超集,Moopertet。如果你认为TypeScript没有从CoffeeScript中获得双箭头,那你就错了。CS transpiler是dev在Angular1中选择的transpiler,TS transpiler是dev在Angular2中选择的transpiler。
Object.keys(myObj).find(k => myObj[k].index === 2)