关于如何用变量声明和函数调用的更简洁的方法的问题。

变量声明

let tx1 = '[{"type":"market","data":{"Id":10101}}]'
let tx2 = '[{"type":"market","data":{"Id":10102}}]'
let tx3 = '[{"type":"market","data":{"Id":10103}}]'
let tx4 = '[{"type":"market","data":{"Id":10104}}]'
let tx5 = '[{"type":"market","data":{"Id":10105}}]'
let tx6 = '[{"type":"market","data":{"Id":10106}}]'
let tx7 = '[{"type":"market","data":{"Id":10107}}]'
let tx8 = '[{"type":"market","data":{"Id":10108}}]'
let tx9 = '[{"type":"market","data":{"Id":10109}}]'
let tx10 = '[{"type":"market","data":{"Id":10110}}]'

函数调用

function cc1(
    let url={
    body:tx1 //调用变量tx1
    }
)
function cc2(
    let url={
    body:tx2 //调用变量tx2
    }
)
function cc3(
    let url={
    body:tx3 //调用变量tx3
    }
)

依次类推……
假如我有100个这样的变量是不是得做100个声明呢,函数来调用的话,是不是也得写这么多呢?有没有更简洁的方法处理这一串代码。
新手提问,不专业,请多多包涵!

阅读 1k
1 个回答

关键在于,数据源是什么。比如下面这一段可以作为这段程序的数据源

let tx1 = '[{"type":"market","data":{"Id":10101}}]'
let tx2 = '[{"type":"market","data":{"Id":10102}}]'
...

这一段数据源是通过变量声明和赋值得来的,那么就是说,如果你有 100 个……那就是声明 100 个,一个都少不了。

由于各自是单个变量 声明,所以用的时候,也只能单个使用,除非能有一个对象把它们包含起来。很遗憾,这个声明做不到,因为 let 是块级变量声明,它声明的变量不能附加的任何对象上。如果是 var 声明的,而且是在 Global 环境声明的,可以附加到 global 环境对象上,比如浏览器环境的 window

不扯远了,如果真有几十上百这么多,一般不会单个去声明,而是声明成一个数组,像这样:

let txs = [
    '[{"type":"market","data":{"Id":10101}}]',
    '[{"type":"market","data":{"Id":10102}}]',
    '[{"type":"market","data":{"Id":10103}}]',
    '[{"type":"market","data":{"Id":10104}}]',
    '[{"type":"market","data":{"Id":10105}}]',
    '[{"type":"market","data":{"Id":10106}}]',
    '[{"type":"market","data":{"Id":10107}}]',
    '[{"type":"market","data":{"Id":10108}}]',
    '[{"type":"market","data":{"Id":10109}}]',
    '[{"type":"market","data":{"Id":10110}}]',
];

使用的时候只需要 txs[1]tsx[1] 这样就可以了,只是要注意下标不是从 1 开始,而是从 0 开始的。

然后是定义函数的问题……定义这么多相似的函数当然是可以,但是没有什么实际意义。如果确实需要,可以参考前面变量的数组定义方式。

最后……你到底想解决一个什么样的问题?如果仍然执意要写这么冗长的代码,可以考虑使用自动生成代码,比手写容易多了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题