当前位置: 首页 > news >正文

做网站什么一级导航二级导航南宁求介绍seo软件

做网站什么一级导航二级导航,南宁求介绍seo软件,wordpress用户前端登陆地址,名人堂网站建设Lua基础知识 变量简单的4种变量类型复杂的4种变量类型type函数 字符串操作长度获取--#多行打印字符串拼接别的类型转字符串-- tostring()字符串提供的公共方法 运算符算术运算符-- - * / % ^条件运算符-- > < > < ~(不等于 是 ~)逻辑运算符-- and or not位运算、…

Lua基础知识

  • 变量
    • 简单的4种变量类型
    • 复杂的4种变量类型
    • type函数
  • 字符串操作
    • 长度获取--#
    • 多行打印
    • 字符串拼接
    • 别的类型转字符串-- tostring()
    • 字符串提供的公共方法
  • 运算符
    • 算术运算符-- + - * / % ^
    • 条件运算符-- > < >= <= == ~=(不等于 是 ~=)
    • 逻辑运算符-- and or not
    • 位运算、三目运算符--lua不支持
  • 条件分支语句
    • if 条件 then ... end
    • 不支持switch、三目运算符
  • 循环语句
    • while -- while 条件 do ... end
    • repeat ... until 条件
    • for
  • 函数
    • 两种申明方法
    • 函数传参
    • 函数返回值
    • 函数的类型-- function
    • 不支持函数重载
    • 变长参数-- ...
    • 函数嵌套--函数里面声明函数

变量

简单的4种变量类型

  1. number
  2. string
  3. boolean
  4. nil

lua中所有的变量申明 都不需要申明变量类型 他会自动的判断类型(类似C# 里面的 var)
lua中的一个变量 可以随便赋值 ——自动识别类型
lua中使用没有声明过的变量 ,默认值是nil

复杂的4种变量类型

  1. function–函数
  2. table–表
  3. userdata–数据结构
  4. thread–协同程序

type函数

作用:得到变量类型,返回值是一个string

--lua中使用没有声明过的变量 
--不会报错 默认值 是nil
print(b)--number 所有的数值都是number
print("**********number************")
a = 1
print(a)
print(type(a))
a = 1.2
print(a)
print(type(a))
print("**********string************")
a = "12312"
print(a)
print(type(a))
--字符串的声明 使用单引号或者双引号包裹
--lua里 没有char
a = '123'
print(a)
print(type(a))
print("**********boolean************")
a = true
print(a)
a = false
print(a)
print(type(a))

字符串操作

print("**********字符串************")
str = "双引号字符串"
str2 = '单引号字符串'

长度获取–#

--获取字符串的长度
print("**********字符串长度************")
s = "aBcdEfG字符串"
--一个汉字占3个长度
--英文字符 占1个长度
print(#s)

多行打印

  1. 转义字符
  2. [[]]
print("**********字符串多行打印************")
--lua中也是支持转义字符的
print("123\n123")
print("12\n")s = [[我是
哈哈哈
]]
print(s)

字符串拼接

  1. string.format
print("**********字符串拼接************")
--字符串拼接 通过..
print( "123" .. "456" )
s1 = 111
s2 = 111
print(s1 .. s2)
print(s1 .. s2)print(string.format("我是hhh,我今年%d岁了", 18))
--%d :与数字拼接
--%a:与任何字符拼接
--%s:与字符配对
--.......

别的类型转字符串-- tostring()

print("**********别的类型转字符串************")
a = true
print(tostring(a))

字符串提供的公共方法


print("**********字符串提供的公共方法************")
str = "abCdefgCd"
--小写转大写的方法,不会改变原字符串
print(string.upper(str))
--大写转小写
print(string.lower(str))
--翻转字符串
print(string.reverse(str))
--字符串索引查找
print(string.find(str, "Cde"))
--结果是3--5,lua里都是从1 开始的,有两个返回值
--截取字符串
print(string.sub(str, 3))
print(string.sub(str, 3, 4))
--字符串重复拼接
print(string.rep(str, 2))
--字符串修改,返回修改后的字符串和修改的次数
print(string.gsub(str, "Cd", "**"))--字符转 ASCII码,指定位置1,就是‘L’转为ASCII码
a = string.byte("Lua", 1)
print(a) --76
--ASCII码 转字符
print(string.char(a))
--打印出L

运算符

算术运算符-- + - * / % ^

没有自增自减 ++ –
没有复合运算符 += -= /= *= %=
字符串 可以进行 算数运算符操作 会自动转成number

--字符串 可以进行 算数运算符操作 会自动转成number
print("加法运算" .. 1 + 2)
a = 1
b = 2a = a + b
a = a + 1
print(a + b)
print("123.4" + 1)print("减法运算" .. 1 - 2)
print("123.4" - 1)print("乘法运算" .. 1 * 2)
print("123.4" * 2)print("除法运算" .. 1 / 2)
print("123.4" / 2)print("取余运算" .. 1 % 2)
print("123.4" % 2)--^ lua中 该符号 是幂运算
print("幂运算" .. 2 ^ 5)
print("123.4" ^ 2)

条件运算符-- > < >= <= == ~=(不等于 是 ~=)

print("**********条件运算符************")
-- > < >= <= == ~=
print(3>1)
print(3<1)
print(3>=1)
print(3<=1)
print(3==1)
--不等于 是 ~=
print(3~=1)

逻辑运算符-- and or not

print("**********逻辑运算符************")
--&&  ||  !   “短路”
--and  or  not  lua中 也遵循逻辑运算的 “短路” 规则
print( true and false)
print( true and true)
print( false and true)print( true or false)
print( false or false)print( not true)

位运算、三目运算符–lua不支持

条件分支语句

if 条件 then … end

print("**********条件分支语句************")
a = 9
--if 条件 then.....end
--单分支
if a > 5 thenprint("123")
end--双分支
-- if 条件 then.....else.....end
if a < 5 thenprint("123")
elseprint("321")
end--多分支
-- if 条件 then.....elseif 条件 then....elseif 条件 then....else.....end
if a < 5 thenprint("123")
--lua中 elseif 一定是连这些 否则报错
elseif a == 6 thenprint("6")
elseif a == 7 thenprint("7")
elseif a == 8 thenprint("8")
elseif a == 9 thenprint("9")
elseprint("other")
endif a >= 3 and a <= 9 thenprint("3到9之间")
end--lua中没有switch语法  需要自己实现

不支持switch、三目运算符

循环语句

while – while 条件 do … end


print("**********while语句************")
num = 0
--while 条件 do ..... end
while num < 5 doprint(num)num = num + 1
end

repeat … until 条件

print("**********do while语句************")
num = 0
--repeat ..... until 条件 (注意:条件是结束条件)
repeatprint(num)num = num + 1
until num > 5 --满足条件跳出 结束条件

for

  1. for 变量名=起始值,结束值 do … end
  2. for 变量名=起始值,结束值,增值 do … end

print("**********for语句************")for i =2,5 do --默认递增 i会默认+1print(i)
endfor i =1,5,2 do --如果要自定义增量 直接逗号后面写print(i)
endfor i =5,1,-1 do --如果要自定义增量 直接逗号后面写print(i)
end

函数

print("**********函数************")
--function 函数名()
--end

两种申明方法

  1. 在function后面取名字
  2. 不取名字,用一个变量存储
print("**********无参数无返回值************")
function F1()print("F1函数")
end
F1()
--有点类似 C#中的 委托和事件
F2 = function()print("F2函数")
end
F2()

函数传参

  1. 个数多了或者少了,不会报错
  2. 多了弃用
  3. 少了补空
print("**********有参数************")
function F3(a)print(a)
end
F3(1)
F3("123")
F3(true)
--如果你传入的参数 和函数参数个数不匹配
--不会报错 只会补空nil 或者 丢弃
F3()
F3(1,2,3)

函数返回值

  1. 可以又多个返回值
  2. 外部用多个变量来接取,接少接多不影响,少了丢弃、多了为nil
print("**********有返回值************")
function F4(a)return a, "123", true
end--多返回值时 在前面申明多个变量来接取即可
--如果变量不够 不影响 值接取对应位置的返回值
--如果变量多了 不应 直接赋nil
temp, temp2, temp3, temp4 = F4("1")
print(temp)
print(temp2)
print(temp3)
print(temp4)

函数的类型-- function

print("**********函数的类型************")
--函数类型 就是 function
F5 = function( )print("123")
end
print(type(F5))

不支持函数重载

–函数名相同 参数类型不同 或者参数个数不同
–lua中 函数不支持重载
–默认调用最后一个声明的函数

变长参数-- …

  1. 先用表接,再使用
print("**********变长参数************")
function F7( ... )--变长参数使用 用一个表存起来 再用arg = {...}for i=1,#arg doprint(arg[i])end
end
F7(1,"123",true,4,5,6)

函数嵌套–函数里面声明函数

闭包:改变变量的生命周期

print("**********函数嵌套************")
--函数是变量
function F8()return function()print(123);end
end
f9 = F8()
f9()--闭包 就是在一个函数里返回一个函数,然后返回的函数改变传入参数的生命周期
function F9(x)--改变传入参数的生命周期return function(y)return x + yend
endf10 = F9(10)
print(f10(5))
http://www.hkea.cn/news/438331/

相关文章:

  • 简单网站建设优化推广100个电商平台
  • 网站建设的仿站seo顾问收费
  • 珠宝行业做网站的好处株洲seo排名
  • java web开发网站开发cpa推广接单平台
  • 广西南宁网络营销网站网站权重优化
  • 黄山网站设计公司营销网站建设多少钱
  • 网站建设招标评分表湖南关键词优化推荐
  • 淘宝上成都网站建设如何制作视频网站
  • 最吃香的男生十大手艺5g网络优化
  • 河源哪里做网站网络项目怎么推广
  • 网站闭关保护怎么做广州百度seo 网站推广
  • 可以在线做动图的网站近期重大新闻事件
  • 伊犁州建设局网站怎么做微信小程序
  • 做网站需要买主机那新媒体营销方式有几种
  • 网络推广seo公司seo排名的方法
  • 南山做网站多少钱百度资讯
  • 西安哪里有做网站的小学生收集的新闻10条
  • 做游戏网站有几个要素seo网站关键词优化报价
  • 蓬业东莞网站建设技术支持东莞做网站公司首选
  • 网站版式设计获客渠道有哪些
  • 今日军事新闻简短扬州seo优化
  • 国外好看的教育类网站模板下载东莞做网站最好的是哪家
  • 微擎与wordpress快速优化seo软件推广方法
  • 英文网站设计哪家好免费网站搭建
  • 网站建设公司 销量深圳谷歌seo公司
  • 新蔡哪有做网站建设的全球疫情今天最新消息
  • 怎么做平台网站百度seo报价方法
  • 帮人做网站 怎么收费怎么用网络推广
  • 网站排名优化建设百度广告投放技巧
  • 文件服务器网站搭建教程好的竞价托管公司