大家好,交易网站源码分享的网站相信很多的网友都不是很明白,包括源码交易网站源码也是一样,不过没有关系,接下来就来为大家分享关于交易网站源码分享的网站和源码交易网站源码的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!
有时您可能希望轻松复制或制作Javascript对象或数组的浅拷贝,或者可能将许多参数传递给函数或类方法。
扩展运算符通常用于实现此目标。
使用该运算符使代码简洁并增强了其可读性。
在本文后面,我将“传播”来自BinanceAPI的示例数据。
为什么我们使用扩展运算符?
扩展运算符是JavaScriptES6中运算符集的新增内容。它接受一个可迭代的(例如一个数组)并将其扩展为单个元素。
句法
扩展运算符的语法由三个点(…)表示
后面是对象或数组或函数/方法参数的名称。
具体用例将在本文后面解释。
如何使用ES6Javascript扩展运算符
扩展运算符在以下用例中非常有用。
1.对象
让我们使用传播运算符组合这两个对象(myVehicle和updateMyVehicle)
constmyVehicle={\nbrand:&39;,\nmodel:&39;,\ncolor:&39;\n}\n\nconstupdateMyVehicle={\ntype:&39;,\nyear:2021,\ncolor:&39;\n}\n\nconstmyUpdatedVehicle={…myVehicle,…updateMyVehicle}\n//result\n{\nbrand:&39;,\ncolor:&39;\nmodel:&39;,\ntype:&39;,\nyear:2021\n}
请注意,颜色属性red已更新为Yellow。这意味着使用扩展运算符,您可以使用来自另一个对象的新值更新属性。
我还可以在myUpdateVehicle对象的任何位置包含任何属性。我将包括所有者,马力,任何东西。你应该试试看!
…\nconstmyUpdatedVehicle={\nowner:&34;,\n…myVehicle,\nhorsepower:&34;,\n…updateMyVehicle,\nanything:&34;\n}\n//result\n{\nanything:&39;,//added\nbrand:&39;,\ncolor:&39;\nhorsepower:&34;,//added\nmodel:&39;,\nowner:&34;,//added\ntype:&39;,\n}\n…
控制台通常会按字母顺序对属性进行排序,因为对象中的位置并不重要。
2.数组
我们可以使用扩展运算符轻松组合数组。下面是它是如何完成的:
constnumbersOne=[1,2,3];constnumbersTwo=[4,5,6];constnumbersCombined=[…numbersOne,…numbersTwo];
3.休息参数
rest参数为您提供了一种处理不定数量参数的可靠方法。它涉及在创建函数或方法时使用扩展运算符。
为了更好地理解什么是休息参数,让我们从头开始。
您可以使用未指定数量的参数调用函数,无论它如何定义。
例如:
functionmultiplyAll(…args){//observethespreadoperator\nletresult=1;\nfor(letargofargs){\nresult*=arg;\n}\nreturnresult;\n}\n//runthecode\nconsole.log(multiplyAll(1));//result:1\nconsole.log(multiplyAll(1,2));//result:2\nconsole.log(multiplyAll(1,2,3));//result:6
您可能还想这样做:
…functionmultiplyAll(parameter1,parameter2,…args)…
您仍然可以像往常一样访问args参数和其他参数吗?查出。
传播币安市场数据作为样本数据
Binance提供了一个有据可查的API,支持第三方集成和访问Binance数据和指标。
第一步
在此示例中,我将使用此API端点(/api/v3/trades)从binance获取BTC-USDT符号的5笔交易结果作为市场数据,以访问交易信息。
第二步
我将传播第一步(交易)的结果,然后传播第一个数组元素或数据的属性,即第一笔交易。
你也应该试试。
这是代码:
constfetch=require(&39;);//npminstallnode-fetch\n\n//STEPONE:getthetradesdataviapostrequest\n\n//binancerequiredparameter\nconstparams={\nsymbol:&39;,\nlimit:5;\n};\n//getthe5tradesforBTC-USDTSymbolonBinanceExchange\nconsttrades=async()=>awaitfetch(&39;,{\nmethod:&39;,\nbody:body:JSON.stringify(params)\n});\n//sampleresult\nletsample=[\n//…\n{\n&34;:28457,\n&34;:&34;,\n&34;:&34;,\n&34;:&34;,\n&34;:1499865549590,\n&34;:true,\n&34;:true\n}\n//…\n];\n\n//STEPTWO:IwillspreadthereturnArrayandthepropertiesofthefirstarrayelementordata(thefirsttradedataatindex0)\n\n//extradatatocombinewith\nlettoextra={exchange:&34;,account:&34;};\n\n//spreadthetradesarray\nconstcombinedArray=[…extra,…trades];\n\n//spreadthefirsttradeatindex0\nconstfirstTrade={…trades[0]};\n\n//TRYITNOW!\nconsole.log(combinedArray);\nconsole.log(firstTrade);
结论
使用RestOperator(…),您可以快速将现有数组或对象的全部或部分复制到另一个数组或对象中,而不会影响原始对象或数组。
您还可以使用扩展运算符扩展函数或方法的参数。
在本文中,我使用了币安市场数据对象和数组作为示例。如果你想知道为什么;我喜欢展示示例代码的真实示例。是的,我在我的代码中使用了扩展运算符。你也应该试试。
谢谢阅读!
更多APP/小程序/网站源码资源,请搜索&34;!
OK,关于交易网站源码分享的网站和源码交易网站源码的内容到此结束了,希望对大家有所帮助。
