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

将文本输入转换为小写-Javascript,javascript,arrays,ionic-framework,angularjs-scope,Javascript,Arrays,Ionic Framework,Angularjs Scope,在我的Ionic应用程序中创建不区分大小写的搜索时遇到问题。我有以下内容将标签推送到firebase中。在进入数据库之前,如何将整个数组转换为小写 $scope.addToTag=函数(标记){ if($scope.productTags.indexOf(tag)=-1) $scope.productTags.push(标记); $scope.productTags[tag]=true; var productTags={}; var addToTag=函数(标记){ productTags[t

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

$scope.addToTag=函数(标记){
if($scope.productTags.indexOf(tag)=-1)
$scope.productTags.push(标记);
$scope.productTags[tag]=true;
var productTags={};
var addToTag=函数(标记){
productTags[tag]=true;
};
};

提前谢谢

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


您向它传递一个函数,该函数将转换数组中的每个项并返回新数组。

您可以使用映射,将用于in用于of用于循环,将用于每个。。。对这个。与每个元素的toLowerCase函数结合使用

地图一起使用

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

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

console.log(lowerCaseTags);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
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);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
与中的一起使用:

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

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

console.log(lowerCaseTags);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
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);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
一起用于

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

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

console.log(lowerCaseTags);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
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);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
与循环一起使用

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

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

console.log(lowerCaseTags);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);
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);
var tags = ['ANDROID', 'iOS', 'Windows Phone'];
var lowerCaseTags = [];

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

console.log(lowerCaseTags);

循环遍历数组并放入
arrayName[i].toLowerCase()
,这样我的实现就是productTags=productTags.map(item=>item.toLowerCase());不创建新数组:
array.forEach((v,i,a)=>a[i]=v.toLowerCase())。可能是:)@RobG我不想变异:)哇,回答得好!在使用for..in和for..of对数组进行迭代时,应该包括已知的注意事项。此外,for循环不考虑稀疏数组。forEach的一个显著特点是,它可以修改数组而不创建新数组,但您已经创建了一个新数组。