回复:现在可以说了。IOT2K学习(六) 学习JavaScript

yming

西门子1847工业学习平台

  • 帖子

    23138
  • 精华

    881
  • 被关注

    1253

论坛等级:至圣

注册时间:2004-03-06

钻石 钻石 如何晋级?

发布于 2018-06-13 20:55:10

23楼

说一些那个教程中没有的:

我们已经知道,在JavaScript中,变量的数据类型是与PLC编程差不多的。

字符串、数字(目前都是 64位浮点,不需要做限定 整数之类。使用时,用方法来确定。)、布尔。

比较有意思的是数组

在JavaScript中,它的数组可不像咱们 TIA中的那样:Array [0 ... 99 ] of int 规定的那样“死”。

在JavaScript 中的数组可以是任意的。有多任意呢?

1、首先,数组的声明是可以不定的。你可以声明个没有数据类型、没有下标限定的数组变量

var driv_line = Array(); //仅当赋值时,才会有具体的数据类型,而之后数组元素是可以随便追加的。

2、不像咱们PLC中的数组,一旦是 整数数组 就全部是整数。在JavaScript中的数组元素是可以任意的

比如:

它的元素:

driv_line [0] = "CU240E-2PN"; //字串

driv_line [1] = "PM240-2";  //字串

driv_line [2] = 0.75; //kW 数值

driv_line [3] = 2.13; //A 数值

driv_line [4] = true;  //ON or OFF 布尔

是不是JS的数组功能很强大?

3、虽然上面功能强大,且为标准用法;但是要用数字下标来记住每一个下标的数据类型是很困难的。哈哈,JS早就帮你想到了。你可以用明确的字符串来代替这种没有意义的数字下标!

var driv_form = Array();//成型部驱动

driv_form ["CU"] = "CU240E-2PN"; //字串

driv_form ["PM"] = "PM240-2";  //字串

driv_form ["Power"] = 0.75; //kW 数值

driv_form ["Current"] = 2.13; //A 数值

driv_form ["Running"] = true;  //ON or OFF 布尔

这样,我们就可以用 driv_form ["PM"] 直接明示地找到 成型部驱动功率模块的 型号!

4、上述的 数组,仅仅是一个成型部模块的驱动。那么整条线呢?没问题!要知道,在JS中,数组的元素也可以是数组!

由此,我们就可以继续声明另一个数组:

var production_line = Array();//声明一个数组

 production_line["formming"] = driv_form;  //将成型部分的驱动数组赋值给 formming 元素

var driv_pres = Array();//定义个压缩部驱动数组

driv_pres ["CU"] = "CU250S-2PN"; //字串

driv_pres ["PM"] = "PM340";  //字串

driv_pres ["Power"] =1.10; //kW 数值

driv_pres ["Current"] = 3.72; //A 数值

driv_pres ["Running"] =false;  //ON or OFF 布尔

production_line["compression"] = driv_pres;//将压缩部数组赋值给 production_line 数组的 compression元素。

这样,我们就可以通过:

 production_line["compression"] ["CU"] 来获得 压缩部分驱动的CU型号: "CU250S-2PN";

 production_line["formming"] ["PM"] 来获得 成型部分驱动的功率模块型号: "PM340";

 是不是很好用?程序的可读性也大大增强了?


注意:我这里只是说了 JavaScript 的数组;并没有说 数组对象!事实上,你是可以自定义数组对象,并赋予其不同的属性的。就像我们的不同驱动,虽然型号不同,但它们都是驱动,都有自己相同类型的属性。

比如:功率、电压、电流、转矩、转速。。。。。

@RENHQ @老兵 @高山孤影 一起来探讨。


学而时习之,不亦说乎?温故而知新,不亦乐乎?
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

物联网(IOT)

共有225条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。