这是Lua设计与实现专栏的第6篇文章,专栏由于工作原因已经停更很久了,最近有些闲暇时间可以继续对Lua5.3中的增量GC算法进行一个比较深入的研究,本文主要分为顶层设计和具体实现两个大块。 文章以lua5.3源码为背景进行讨论。1.背景和C#、Java类似,lua采用了Mark&Sweep的算法来进行垃圾回收,与之相对的还有个常用算法是Automatic Reference
转载
2024-05-11 11:01:23
150阅读
setTimeout()在js类中的使用方法
setTimeout (表达式,延时时间)
setTimeout(表达式,交互时间)
延时时间/交互时间是以豪秒为单位的(1000ms=1s)
setTimeout 在执行时,是在载入后延迟指定时间后,去执行一次表达式,仅执行一次 setTimeout 在执行时
转载
2024-06-19 08:40:16
215阅读
setTimeout()是js中的一类重要函数,将一段代码延迟一定时间并异步执行。但是这个函数经常不听话。在实践中,可能经常有人碰到类似下面的这种情况:for (var i = 1; i <= 2; i++) {
setTimeout(function() { alert(i) }, 100);
} 我们期望的结果是,先隔100毫秒弹出1,再隔100毫秒弹出2。但是跑起来后
转载
2023-08-20 12:32:41
87阅读
先来几条纲领: 1.函数在被直接调用的时候,其中的this指针永远指向window 2.匿名函数this总是指向window对象 3.谁执行函数,this就指向谁 4.如果函数new了一下,那么就会创建一个对象,并且this指向新创建的对象 前些天在练习写一个小例子的时候用到了定时器,发现在setInterval和setTimeout中传入函数时,函数中的this会指向windo
javascript中的setTimeout,大家都知道是这样调etTimeout调用不了。如果这个f是嵌套在一些事件或其他函数体内,s
原创
2022-08-15 14:01:34
112阅读
一:精度的自动提升整型数据有: byte、 short、 int、 long, 他们都有自己的最大直和最小值,而且都有默认值,整型数据的默认值就是0。DEMO:定义一个int类型的变量 以上的输出结果是25.0,原因是数字在进行四则运算的时候会自动提升精度,最终计算出来的结果的精度以高精度的为准,这种现象叫做精度的自动提升。DEMO: int 类型的最大值和
转载
2024-10-14 14:37:18
15阅读
键值操作$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
//參数:connect(host,port,timeout)
//timeout能够为空,在redis.conf里timeout默认300
//pconnect不会主动关闭的连接key//写入值
$redis->set($work->uid, $workS
转载
2023-09-28 10:02:44
232阅读
这样使用,后面的4000无效 这样使用,后面的4000秒有效 通过return function,就有效果。很奇怪!
原创
2021-08-05 16:26:57
393阅读
一箭头函数ES6 允许使用“箭头”(=>)定义函数: 注意:=> 是一个完整的运算符,不能拆开 = >箭头函数一定是匿名函数,要使用“=”赋值接收某一个匿名的箭头函数,来给这个匿名的箭头函数命名。函数的扩展
1【function的基本简化】 之前定义函数要写function关键字:const sum = function(a , b){
return a + b;
}现在
转载
2024-10-14 11:07:40
71阅读
1,setTimeout() 从技术上讲,当setTimeout函数被调用时,浏览器将把该语句添加到待执行的语句列表中,同时程序中的其他语句并不会停止,而是继续运行。只要完成了当前正执行的语句,浏览器就会检测待执行的语句列表,并且执行已经到期的语句。如果指定的延迟时间到了,但是浏览器仍在执行其他任务,那么setTimeout函数指定的任务将会延迟,知
转载
2023-06-06 12:57:27
226阅读
也许你过去在setTimeout中传参数一直是这样
setTimeout("pass(" + argu + ")",1000)
这样只能传字符串,对传递object就无能为力了,需要大费文章.然而别忘了,第一个参数还可以是function!!!
看以下代码实现向里面的function 传参数
<script type="text/javascript"> var _
转载
精选
2007-07-20 16:35:20
831阅读
一、setTimeout(script,millisecond); 是从现在算起多少微秒后运行该代码(只运行一次)setInterval(script,millisecond); 是每隔多少微秒运行一次代码示例:1.执行一次
<span id="time"></span> 秒<script type="text/javasc
原创
2012-11-27 09:19:06
2926阅读
一、C++中的函数重载机制函数定义时的处理:编译器的函数符号命名机制,C++对代码进行编译时会根据函数名、参数列表(参数类型、数量、顺序)等对函数进行重新命名;函数调用时的处理:(我曾经错误理解为调用时的处理和处理函数定义时类似,通过判断参数类型来得到函数名进行调用,但是这种粗暴的方式会有很多逻辑漏洞,比如未考虑到有默认参数的函数调用,未考虑到编译器自动类型转换的函数调用等)在函数调用时,编译器如
转载
2024-04-11 15:10:11
78阅读
•assert(value) - 检查一个值是否为非nil, 若不是则(如果在wow.exe打开调试命令)显示对话框以及输出错误调试信息
•collectgarbage() - 垃圾收集器. (新增于1.10.1)
•date(format, time) - 返回当前用户机器上的时间.
•error("error message",level) - 发生错误时,输出一条定义的错误
转载
2024-08-16 08:07:11
110阅读
lua_自己对“lua函数”知识点的总结1.lua函数的定义--lua中,函数都是function类型的对象。(1)其可以被比较 (2)其可以赋值给一个对象(3)可以传递给函数(4)可以从函数中返回 (5)作为table表中的键函数的两种定义方式(1)function 函数名 (参数) (2) 函数名 = function(参数) 函数内容
转载
2024-03-15 20:44:03
66阅读
funtion(函数)1.1 function(函数)是一种变量和其他编程语言一样(c/c++),lua函数是完成某个功能并返回相应值的代码块,但lua中,函数和number、boolean以及table一样是一种变量,funtion可以赋值给变量、可以作为table的某个成员、也可以作为某个函数的的参数等,具体如下:-- 函数功能: 比较两个数的大小
function compare(a, b)
转载
2024-03-19 22:22:09
59阅读
一 Lua函数的定义lua函数(1)Lua 编程语言函数定义格式函数定义: '函数名' + '参数组成的列表' + '函数体'
一对圆括号'()'把参数列表'括起来'
即使被调用的函数'不需要参数',也需要'一对圆括号()'
++++++++++++'分割线'++++++++++++
function function_name(argument1, argument2, ar
转载
2024-02-17 17:28:29
148阅读
error and exception程序健壮性的一个体现就是对异常和错误的处理。 由于Lua是一种扩展语言,通常嵌入在应用程序中,因此在发生错误时它不能简单地奔溃或退出。相反,只要发生了一个错误,Lua就应该结束当前程序块并返回应用程序。1. error 函数 Lua程序遇到不合法操作时都会引发一个错误,也可以显示地引
转载
2024-05-21 08:47:01
166阅读
L1[function]01. 定义与调用函数函数的定义 和概念 没什么可说的lua的函数声明和调用是有先后顺序的 先声明后调用函数就是变量的一种 所以可以自由的把函数在变量间相互赋值 不过注意函数变量和表变量差不多 都是存储的是内存地址 指针aa=function (x,y)—红色部分就是所谓的lua的匿名函数 但是真的名不副实 pri
转载
2024-02-29 15:09:02
207阅读
Lua是一种动态类型的语言。
在Lua中有8种基础类型:nil(空)、boolean(布尔)、number(数字)、string(字符串)、userdata(自定义类型)、function(函数)、thread(线程)和table(表)。
print(type("Hello World") -->string
print(type(10.2*3))
转载
2024-04-11 08:51:51
305阅读