修改数组中的每个值[重复]

Posted

技术标签:

【中文标题】修改数组中的每个值[重复]【英文标题】:Modify every value in an array [duplicate] 【发布时间】:2021-01-29 02:20:11 【问题描述】:

任务

您有一个事物列表(数组),并且您想以相同的方式修改所有事物。

例如:

url_list = ['google.com', 'apple.com', 'amazon.com']

期望的输出例如:

www_url = ['www.google.com', 'www.apple.com', 'www.amazon.com']

问题/问题

更新所有在 Apps 脚本中起作用的值的最简单方法是什么。

【问题讨论】:

输入和输出有什么区别,到目前为止你尝试过什么? 好吧,我正在尝试发布有用的解决方案,但还没有足够的积分一次性发布:( Edit 更新“所需输出”的问题。目前输入和输出都是一样的。 forEach 确实在应用程序脚本中工作。 【参考方案1】:

@Landsil 发布的解决方案应该可以与 Apps 脚本一起正常工作,但如果不能正常工作,您可以用更传统的方式重写它:

for(let i=0; i<url_list.length; ++i) 
      www_url[i] = 'www.' + url_list[i];

【讨论】:

【参考方案2】:

最简单的方法似乎是使用“地图”功能。

 var www_url = url_list.map((url) => 'www.' + url);

您所做的只是在旧值的位置映射新值,并且您可以选择很多方式来修改它。

它还需要第二个参数,因此您可以为某些位置指定不同的更改。就我而言,我需要第一条记录看起来不同。

 var netWhitelist_values = url_list.map((url, index) => 
 
 if (index === 0) return (url + '\\');
 return ('\\n' + url + '\\');
 );

【讨论】:

好的。我只是认为***.com/questions/953311/… 或***.com/questions/12482961/… 或***.com/questions/35879307/… 都会提供易于适应的答案,因此新鲜的自我问答对我来说似乎是多余的。但是……好吧。 foreach 在 appscript 中不起作用。我应该从标签中删除 javascript 吗?正常循环会起作用,是的,我只是在看一些更简单的东西,老实说还没有找到这两个。我一定是问错了问题。 @Landsil - 对不起,为什么普通的forEach 方法在 GAS 中不起作用?仅供参考,GAS 只是带有一些曲折的 JavaScript(自从转向 V8 运行时更是如此。不过,forEach 也可以在 Rhino 中工作)。顺便说一句,如果您想建立一个初始代表,您可以从查看完全未回答的问题开始,然后对您理解的问题进行尝试:***.com/search?q=%5Bgoogle-apps-script%5D+answers%3A0 我正在尝试使用它,但它没有注册,我用谷歌搜索它并获得了相同的信息。 v8 迁移手册还说应该避免只支持“for。(刚刚发现)是的,我将不得不花更多时间处理新问题,但看起来他们中的大多数人会立即得到答案。【参考方案3】:

你可以这样做:

let url_list = ['google.com', 'apple.com', 'amazon.com']

url_list.forEach(item => 
  console.log('www.' + item);
)

【讨论】:

这其实是我原来的计划,但是apps脚本版本的java脚本没有这个功能:( Foreach 确实在应用程序脚本中工作。不知道 OP 对 forEach 做错了什么。

以上是关于修改数组中的每个值[重复]的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 26.删除有序数组中的重复项

php数组元素值的修改和删除问题

leetcode-26.删除重复数组中的重复项

删除排序数组中的重复项

禁止数组中的重复项

26. 删除排序数组中的重复项