[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[技术讨论] 求一些vbs的冷门用法

本帖最后由 jyswjjgdwtdtj 于 2023-4-29 23:47 编辑

单纯只是好奇而已 丰富一下“阅历”
提供个小小的例子(可能不冷门)吧
  1. class example
  2. private num
  3. private sub class_initialize
  4. num=1
  5. end sub
  6. public default function add()
  7. add=num
  8. num=num+1'才知道 vbs函数内返回返回值不会直接退出函数 而是继续执行到结尾 然后把与函数名相同的变量作为返回值返回
  9. end function
  10. end class
  11. set a=new example
  12. msgbox a()
  13. msgbox a
  14. '这么做可以拥有“函数”自己的变量 而且可以对函数进行传递 不用用那个神奇的getref了
  15. set b=a'b和a是同一个函数
  16. b=a'b是a的返回值
  17. function example fn(byval obj)
  18. '对于对象 不论byval byref 一律传址
  19. 或许可以作为“回调函数”?虽然作为一个不存在同步的语言回调函数啥用也没有……
  20. msgbox obj()
  21. end function
  22. examplefn (a)
复制代码
以上没经过测试

adodb.recordset

TOP

说个vbs很傻的一个地方
比如拿jquery举个例子
  1. javascript:
  2. $(".box").css("background","red").text(123123123).slideUp()
复制代码
原封不动改成vbs
  1. vbscript:
  2. $(".box").css("background","red").text(123123123).slideup()
复制代码
报错
  1. vbscript:
  2. $(".box").css "background","red" .text 123123123 .slideup
复制代码
报错
  1. vbscript:
  2. a=$(".box").css("background","red").text(123123123).slideup()
复制代码
不报错

TOP

TOP

一些奇怪的特性也可以啦 比如msgbox会优先去一个对象能转换为字符串的值 而wscript.echo 不会

TOP

返回列表