相关疑难解决方法(0)

短路Array.forEach就像调用break

[1,2,3].forEach(function(el) {
    if(el === 1) break;
});
Run Code Online (Sandbox Code Playgroud)

如何forEach在JavaScript中使用新方法执行此操作?我试过了return;,return false;而且break.break崩溃,return除了继续迭代之外什么都不做.

javascript arrays

1429
推荐指数
13
解决办法
94万
查看次数

在Javascript中,即使从不抛出异常,使用try-catch块也是昂贵的吗?

当没有任何异常被抛出时,使用几个try-catch块是"慢"吗?我的问题与问题相同,但对于Javascript.

假设我有20个函数,其中包含try-catch块.另一个函数调用这20个函数中的每一个.他们都不会抛出异常.由于这个try-catch块,我的代码执行速度会慢还是执行得更差?

javascript performance exception-handling exception try-catch

52
推荐指数
4
解决办法
3万
查看次数

获取返回值并在JavaScript中退出forEach?

如何修改此代码以便我可以获取field.DependencyFieldEvaluated值并在获得此值后立即退出函数?

function discoverDependentFields(fields) {
                    fields.forEach(function (field) {
                        if (field.DependencyField) {
                            var foundFields = fields.filter(function (fieldToFind) { return fieldToFind.Name === field.DependencyField; });
                            if (foundFields.length === 1) {
                               return field.DependencyFieldEvaluated = foundFields[0];

                            }
                        }
                    });
                }
Run Code Online (Sandbox Code Playgroud)

javascript

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

JavaScript 中带有 break 和 find() 的 for 循环

刚看到有人这么写:

let id = 1;
...
let employee = null;

for (const e of employees) {
    if (e.id === id) {
        employee = e;
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

似乎是一种过于复杂的写法:

let id = 1;
...
let employee = employees.find(e => e.id === id);
Run Code Online (Sandbox Code Playgroud)

使用带有 a breakvs a的循环有什么好处find()吗?

find()幕后的实现是什么?

javascript loops find break

5
推荐指数
1
解决办法
7660
查看次数

如何在 javascript 中使用 forEach 中的中断?

在 reactjs-babel 应用程序中,我尝试使用break时发生了奇怪的行为forEach

    var SomeElement = React.CreateClass({
        ... ,
        getMessageStatus: function getMessageStatus(message) {
            var states = this.state.messages_states;
            var status = undefined;
            states.forEach(function (messageEntity) {
                if (messageEntity.id == message.id && messageEntity.is_question == message.is_question) {
                    status = messageEntity.status;
                    break; // - this is not working 
                }
            });
            return status;
        },
        ...
        });
Run Code Online (Sandbox Code Playgroud)

breakCannot determine target for 'break'在 PhpStorm 和 Babel repl 中说它像repl: Unsyntactic break 如何正确使用 break 一样?

javascript reactjs babeljs

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

如何打破 javascript 中的 foreach 循环?

我有一个对象mobile_specs,它有几个字段,例如 DeviceName、Brand、Camera。我循环遍历mobile_specs对象,以便我可以以表格格式打印两个手机的规格:

var i=0;
Object.keys(mobile_specs).forEach(function(key) {
                       if(i==5)
                       {
                        break;
                       }
                      var mobile1=mobile_specs.[key];
                      var mobile2=mobile_specs.[key];
                      alert(mobile1 + " " +mobile2);
                      i++;
                });
Run Code Online (Sandbox Code Playgroud)

但是上面的代码给了我一个错误:

Illegal break statement
Run Code Online (Sandbox Code Playgroud)

当 i==5 时如何打破循环?

任何帮助表示赞赏。

javascript object node.js

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

如何在ES6 Map中为每个中断/中断/停止?

是否有一种很好的方法(使用JS例外除外)来停止ES6 Map对象中的forEach循环(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/forEach

从MDN上提供的示例中-有一种方法可以停止对“栏”(跳过栏)的枚举:

function logMapElements(value, key, map) {
    console.log(`m[${key}] = ${value}`);
}
new Map([['foo', 3], ['bar', {}], ['baz', undefined]]).forEach(logMapElements);
Run Code Online (Sandbox Code Playgroud)

对于建议关闭此问题的人员:是的,它类似于有关Array.prototype.forEach的问题。
但是同时又有所不同:大多数建议的答案都不适用于ES6集和地图。仅抛出异常将起作用,但我要求其他方法

javascript ecmascript-6

1
推荐指数
1
解决办法
2513
查看次数