gpt4 book ai didi

javascript - 如何优化代码?

转载 作者:行者123 更新时间:2023-11-28 11:32:27 24 4
gpt4 key购买 nike

我有两个基本相同的函数 - 它们迭代某个数组。区别在于循环内发生的情况。

    func1: function () {
var result = "";
for (var i = 0; i < array1.length; i++) {
result = result + array1[i].field1 + ', ';

}
if (result.length > 0) {
return result.substring(0, result.length - 2);
} else return ""
},

func2: function () {
var result = "";
for (var i = 0; i < array2.length; i++) {
result = result + array2[i].field2 + ', ';

}
if (result.length > 0) {
return result.substring(0, result.length - 2);
} else return ""
},

正确的说法是什么,让它只是一个函数,或者让两者都继承一些通用代码?我看到了一种解决方案,使其只是一个函数并提供不同的参数:

func: function (array, fieldName) {
var result = "";
for (var i = 0; i < array.length; i++) {
result = result + array[i].[fieldName] + ', ';
}
if (result.length > 0) {
return result.substring(0, result.length - 2);
} else return ""
},

但有些东西告诉我它很丑。正确的做法是什么?

最佳答案

比连接和 chop 容易得多...

func: function(array, fieldName) {
return array.map(a => a[fieldName]).join(', ');
}

关于javascript - 如何优化代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37914236/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com