数组值检查是否在JavaScript中出现(使用箭头函数?)

Array values check for occurrence in JavaScript (with Arrow functions?)

本文关键字:函数 是否 检查 JavaScript 数组      更新时间:2023-09-26

我需要知道myArr中是否至少有一个字符串以".min.js"结尾…

使用箭头函数,我可能能够做这个任务小提琴:

var myArr = ["one.min.js", "two.max.js"];
$(function(){
    var test = myArr.every(
        e=>e.match('.min.js$'));
    $("#2").text(test);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js">
</script>
<div id="1">This is the value:
    <div id="2">default value</div>
</div>

,
-这个返回false,因为它只对所有值为真(不只是一些),
-仍然是"实验性的"(不是真正兼容所有版本的IE或Firefox)

有一个优雅的,有效的和(至少IE9)"兼容"的解决方案?

使用some代替every,并将箭头函数替换为匿名函数表达式:

var myArr = ["one.min.js", "two.max.js"];
$(function(){
    var test = myArr.some(function (e) {
        return e.match(/'.min'.js$/);
    });
    $("#2").text(test);
});

这样,你应该完全兼容ie9。

http://jsfiddle.net/1faxzcdk/4/