将文本输入转换为小写 - Javascript

时间:2017-02-03 00:13:57

标签: javascript arrays ionic-framework angularjs-scope

在我的Ionic应用中创建不区分大小写的搜索时遇到问题。我有以下将标签推入firebase。如何在进入数据库之前将整个数组转换为小写?

$scope.addToTag = function(tag) {
  if ($scope.productTags.indexOf(tag) == -1)
    $scope.productTags.push(tag);

  $scope.productTags[tag] = true;

  var productTags = {};
  var addToTag = function(tag) {
    productTags[tag] = true;
  };
};

提前致谢!

2 个答案:

答案 0 :(得分:3)

您可以使用地图用于用于用于循环用于每个 ......对此。结合每个元素的 toLowerCase 函数。

使用地图

var tags = ['ANDROID', 'iOS', 'Windows Phone'];

var lowerCaseTags = tags.map(function (tag) {
    return tag.toLowerCase();
});

console.log(lowerCaseTags);

使用 for in

var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

for (var tag in tags) {
    lowerCaseTags.push(tag.toLowerCase());
}

console.log(lowerCaseTags);

使用 for

var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

for (var tag of tags) {
    lowerCaseTags.push(tag.toLowerCase());
}

console.log(lowerCaseTags);

使用 for循环

var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

for (var i = 0; i < tags.length; i++) {
    var tag = tags[i];
    lowerCaseTags.push(tag.toLowerCase());
}

console.log(lowerCaseTags);

使用 forEach

var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

tags.forEach(function(tag) {
    lowerCaseTags.push(tag.toLowerCase());
});

console.log(lowerCaseTags);

答案 1 :(得分:0)

你不需要循环。您可以使用数组方法map()。

yourArray = yourArray.map(item => item.toLowerCase());

您将一个函数传递给它,它会转换数组的每个项目并返回新数组。