如何在另一个函数的函数中使用一个函数

时间:2018-09-24 11:18:35

标签: javascript

在其他功能中,我试图将每个单词的首字母大写。

此功能可以将每个单词的首字母大写转换为我正在使用的大写字母。

function capital_letter(str) 
{
    str = str.split(" ");

    for (var i = 0, x = str.length; i < x; i++) {
        str[i] = str[i][0].toUpperCase() + str[i].substr(1);
    }

    return str.join(" ");
}

这是我尝试使用的第二项功能,但无法使用。

$(document).ready(function() {
  $('#list').dataTable({
    "ajax":{
          url :"list.php",
          type: "GET",
          error: function(){
            $("#post_list_processing").css("display","none");
          }
        },
        "columns": [
              { "data": function capital_letter(item) {
                  return item.title;
                }
              },
              { "data": "description" },
              { "data": "time" }
          ]
  });
});

3 个答案:

答案 0 :(得分:1)

您正在重新定义该函数,而不是实际使用它……像这样调用它;

...
"columns": [
    { "data": capital_letter(item.title) }
...

答案 1 :(得分:1)

您应仅按以下方式调用该函数:

$(document).ready(function() {
  $('#list').dataTable({
    ajax: {
      url: 'list.php',
      type: 'GET',
      error: function() {
        $('#post_list_processing').css('display', 'none');
      },
    },
    columns: [{
        data: capital_letter(item.title);

      },
      { data: 'description' },
      { data: 'time' },
    ],
  });
});

答案 2 :(得分:0)

您没有正确调用该函数。在代码中更改以下内容。

"columns": [
    { "data": capital_letter(item.title) }

创建了一个有效的代码段。

function capital_letter(str) {
  str = str.split(" ");

  for (var i = 0, x = str.length; i < x; i++) {
    str[i] = str[i][0].toUpperCase() + str[i].substr(1);
  }

  return str.join(" ");
}

const columns = [{
    "data": capital_letter("abc")
  },
  {
    "data": "description"
  },
  {
    "data": "time"
  }
]

console.log(columns)