Javascript 在数组中,获取以特定字符开头的字符串

Javascript 在数组中,获取以特定字符开头的字符串,javascript,jquery,Javascript,Jquery,我试图从数组中获取一个以“c”开头的字符串。 通过以下jQuery代码片段,我能够检查是否存在带有“c”的字符串: 数组(类)包含:[“aLabel”、“c2”] c2也可能是c1,c3,c4,c5 var classes = $(this).parent().attr('class').split(' '); var found = $.inArray('c2', classes) > -1; console.log(classes);

我试图从数组中获取一个以“c”开头的字符串。 通过以下jQuery代码片段,我能够检查是否存在带有“c”的字符串:

数组(类)包含:[“aLabel”、“c2”]

c2也可能是c1,c3,c4,c5

        var classes = $(this).parent().attr('class').split(' ');
        var found = $.inArray('c2', classes) > -1;
        console.log(classes);
        console.log(found);
我需要整个c1班,c2班


谢谢你的帮助

一种方法是迭代数组,测试每个元素是否匹配:

function getStringBeginningWith(arr, firstChar) {
  for (var i = 0; i < arr.length; i++) {
    if (arr[i].charAt(0) === firstChar) {
      return arr[i];
    }
  }
  return ""; // return whatever default value applies if no elements match
}

// then, elsewhere in your code:
var classes = $(this).parent().attr('class').split(' ');
var className = getStringBeginningWith(classes, "c");
if (className != "") {
  // matching class found, so do something
}
函数getStringBeginingWith(arr,firstChar){ 对于(变量i=0;i
您在一篇评论中说,只有一个匹配的类,但如果有多个,我编写的函数将只返回第一个。

一种方法是迭代数组,测试每个元素是否匹配:

function getStringBeginningWith(arr, firstChar) {
  for (var i = 0; i < arr.length; i++) {
    if (arr[i].charAt(0) === firstChar) {
      return arr[i];
    }
  }
  return ""; // return whatever default value applies if no elements match
}

// then, elsewhere in your code:
var classes = $(this).parent().attr('class').split(' ');
var className = getStringBeginningWith(classes, "c");
if (className != "") {
  // matching class found, so do something
}
函数getStringBeginingWith(arr,firstChar){ 对于(变量i=0;i
您在一篇评论中说,只有一个匹配的类,但如果有多个,我编写的函数将只返回第一个。

一种方法是迭代数组,测试每个元素是否匹配:

function getStringBeginningWith(arr, firstChar) {
  for (var i = 0; i < arr.length; i++) {
    if (arr[i].charAt(0) === firstChar) {
      return arr[i];
    }
  }
  return ""; // return whatever default value applies if no elements match
}

// then, elsewhere in your code:
var classes = $(this).parent().attr('class').split(' ');
var className = getStringBeginningWith(classes, "c");
if (className != "") {
  // matching class found, so do something
}
函数getStringBeginingWith(arr,firstChar){ 对于(变量i=0;i
您在一篇评论中说,只有一个匹配的类,但如果有多个,我编写的函数将只返回第一个。

一种方法是迭代数组,测试每个元素是否匹配:

function getStringBeginningWith(arr, firstChar) {
  for (var i = 0; i < arr.length; i++) {
    if (arr[i].charAt(0) === firstChar) {
      return arr[i];
    }
  }
  return ""; // return whatever default value applies if no elements match
}

// then, elsewhere in your code:
var classes = $(this).parent().attr('class').split(' ');
var className = getStringBeginningWith(classes, "c");
if (className != "") {
  // matching class found, so do something
}
函数getStringBeginingWith(arr,firstChar){ 对于(变量i=0;i
您在一篇评论中说,只有一个匹配的类,但如果有多个,我编写的函数将只返回第一个。

既然您使用jQuery,您也可以这样做:

var arr = [ "aghtrt", "acrt", "c2", "cwe4", "mklp", "c1", "hello", "world" ],
    matches = new Array();

matches = $.grep(arr, function( n, i ) {
    return (n.search(/^c/i) > -1) ? true : false;
});

$("p").text(matches.join(", "));

Fiddle:

既然您使用的是jQuery,那么您也可以这样做:

var arr = [ "aghtrt", "acrt", "c2", "cwe4", "mklp", "c1", "hello", "world" ],
    matches = new Array();

matches = $.grep(arr, function( n, i ) {
    return (n.search(/^c/i) > -1) ? true : false;
});

$("p").text(matches.join(", "));

Fiddle:

既然您使用的是jQuery,那么您也可以这样做:

var arr = [ "aghtrt", "acrt", "c2", "cwe4", "mklp", "c1", "hello", "world" ],
    matches = new Array();

matches = $.grep(arr, function( n, i ) {
    return (n.search(/^c/i) > -1) ? true : false;
});

$("p").text(matches.join(", "));

Fiddle:

既然您使用的是jQuery,那么您也可以这样做:

var arr = [ "aghtrt", "acrt", "c2", "cwe4", "mklp", "c1", "hello", "world" ],
    matches = new Array();

matches = $.grep(arr, function( n, i ) {
    return (n.search(/^c/i) > -1) ? true : false;
});

$("p").text(matches.join(", "));

Fiddle:

您只需将字符串拆分为一个数组即可

/\bc/ig.test('a c')

您只需将字符串拆分为一个数组即可

/\bc/ig.test('a c')

您只需将字符串拆分为一个数组即可

/\bc/ig.test('a c')

您只需将字符串拆分为一个数组即可

/\bc/ig.test('a c')
那么,您是否尝试过使用或只是编写一个简单的for循环来迭代数组?如果数组中有多个以“c”开头的元素会怎样?数组中总是有一个“c”类。那么您是否尝试过使用或只是编写一个简单的for循环来迭代数组?如果数组中有多个以“c”开头的元素会怎样?数组中总是有一个“c”类。那么您是否尝试过使用或只是编写一个简单的for循环来迭代数组?如果数组中有多个以“c”开头的元素会怎样?数组中总是有一个“c”类。那么您是否尝试过使用或只是编写一个简单的for循环来迭代数组?如果数组中有多个以“c”开头的元素,该怎么办?数组中总是有一个“c”类。