gpt4 book ai didi

javascript - 在 Google Apps 脚本中创建哈希数组

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:57:27 26 4
gpt4 key购买 nike

本周我一直在尝试使用 Trello 和 Google Apps 脚本。我正在尝试创建一个哈希数组,然后我可以用它来加载电子表格。 Google 应用程序脚本不喜欢创建哈希的典型 javascript 代码。我查阅了文档,但他们没有像哈希这样的东西......他们说:

 var object = [];
var object1 = {};
object.push(object1);

这行不通,因为我本质上是在尝试做类似的事情:

var hash={name: , label: };
var n= someNumber;
var l= someLabel
var hash.push(name: n, label: l);

基本上这就是我现在拥有的代码。但这是我的全部功能:

  function getData(){
var list={};
//get the list of delivered cards from Trello
var listRequest = authorizeToTrello(); // get authorization
var result = UrlFetchApp.fetch("https://trello.com/1/lists/4fea3a2c3a7038911ebff2d8/cards",
listRequest);//fetch list
var listOfCards = Utilities.jsonParse(result.getContentText());//Google app utility format json

//outer loop to iterate through list of Cards
for(var i=0; i < listOfCards.length; i++){
var cardId = listOfCards[i].id; //get the id of a single card
var l = listOfCards[i]["label"]; //get the label for the our structure

//get a json object for a single card within the list of cards iteration
var cardRequest = authorizeToTrello();
var getCard = UrlFetchApp.fetch("https://trello.com/1/cards/" + cardId + "/actions", cardRequest);
var singleCard = Utilities.jsonParse(getCard.getContentText());

//inner loop to iterate the single cards JSON objects

for(var j=0; j < singleCard.length; j++) {
if(singleCard[j].data != undefined && singleCard[j].data.listAfter != undefined)
{
var str = singleCard[j]["data"]["listAfter"]['name'];
if(str === "Delivered Q3 2012"){
var n = singleCard[j]['memberCreator']['fullName'];
}
}
}
//push the data to list
list.push(n,l);
}

return name, label; //return list for output
}

最佳答案

看了题目,明白作者需要知道如何创建an associative array在气体中。如果它是正确的,那么这里有几个链接(herehere),下面是示例代码。

function testMap() {
var map = {};
map["name1"] = "value1";
map["name2"] = "value2";
return map;
}

如果作者真的需要

an array of hashes

根据所需的哈希算法,有几种方法。

  1. 使用Utilities.computeDigest使用 available algorithms 之一计算字符串哈希值的方法.
  2. 如果 Utilities.computeDigest 不支持所需的哈希计算算法,然后可以编写自己的实现,因为它是 done对于BLAKE function .

这是一个示例,说明如何使用 MD5 哈希创建哈希数组

function testHash() {
var array = [];
array.push(Utilities.computeDigest(Utilities.DigestAlgorithm.MD5, "value1"));
array.push(Utilities.computeDigest(Utilities.DigestAlgorithm.MD5, "value2"));
return array;
}

附言作者代码返回行 return name, label;//返回输出列表
不正确 - 仅返回 label 变量值。要将几个变量作为数组返回,需要编写 return [name, label];。或者作者可能需要返回 list 变量而不是 namelabel

关于javascript - 在 Google Apps 脚本中创建哈希数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12650771/

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