为了账号安全,请及时绑定邮箱和手机立即绑定

如何操作以前通过 Google 电子表格数据转换创建的 javascript

如何操作以前通过 Google 电子表格数据转换创建的 javascript

呼如林 2022-12-22 12:02:53
有一个谷歌电子表格。通过Spreadsheet自身的(绑定的)脚本,其内容已经转换为javascript文件(conversion.js)。操纵器.gs:function conversion() {  const data =     SpreadsheetApp      .getActiveSheet()      .getRange("Sheet1!A1:C2")      .getValues();    const file =     JSON      .stringify(data)      .replace(/(.*)/,"const conversion = $1;");    DriveApp    .getFolderById("1kpaeLkWoSjwYGZZz7yUIKxjCY6ihVXrz")    .createFile("conversion.js", file, MimeType.PLAIN_TEXT);};生成的 conversion.js 内容为:const conversion = [[11,12,13],[21,22,23]];然后,我想永久地操纵这个 conversion.js 文件的内容。例如:conversion[1][1] = "test";我不介意 conversion.js 文件必须位于何处才能进行操作:-在 Google 云端硬盘中的当前位置或在脚本编辑器中作为单独的文件 (conversion.gs) 位于 manipulator.gs 旁边我只需要复制/粘贴操作文件的内容。const conversion = [[11,12,13],[21,"test",23]];
查看完整描述

2 回答

?
慕雪6442864

TA贡献1812条经验 获得超5个赞

为了替换 2d数据数组的元素,您需要运行以下命令:


data[1].splice(1,1, "test")

在创建之前const file。


尝试以下操作,您将获得所需的结果:


function conversion() {

  const data = 

    SpreadsheetApp

      .getActiveSheet()

      .getRange("Sheet1!A1:C2")

      .getValues();

  

  data[1].splice(1,1, "test")

  

  const file = 

    JSON

      .stringify(data)

      .replace(/(.*)/,"const conversion = $1;");

  


  DriveApp

    .getFolderById("1kpaeLkWoSjwYGZZz7yUIKxjCY6ihVXrz")

    .createFile("conversion.js", file, MimeType.PLAIN_TEXT);

};

结果:

//img1.sycdn.imooc.com//63a3d7150001e5b405840171.jpg

参考:

arr.splice()


查看完整回答
反对 回复 2022-12-22
?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

如果您想更新您在云端硬盘上创建的文件的内容,您有两种可能

1.更复杂但更优雅

2. 更容易

  • 阅读文件,例如在此处完成

  • 根据需要修改内容

  • 用具有更新内容的新文件覆盖现有文件


查看完整回答
反对 回复 2022-12-22
  • 2 回答
  • 0 关注
  • 123 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号