由于VimScript动态数据类型特性和各种不同的作用域,为方便程序员操纵变量,vim平台内置了一组操作变量的函数。
(1)type({expr})
返回给定变量名的数据类型。其中的参数可以是变量名,也可以是字面量常数值。返回值是一个Number类型的数字,含义如下:
0 : Number
1: String
2: Funcref
3: List
4: Dictionary
5: Float
给出一个例子:
let a = 1
let b = 'hello'
let c = "hello"
let d = [1,2,3]
let e = {'name':'smstong', 'age': 12}
function! MyFunc(x)
echo s:x
endfunction
let F = function('MyFunc')
let g = 1.0
echo type(a)
echo type(b)
echo type(c)
echo type(d)
echo type(e)
echo type(F)
echo type(g)
echo type(233)
echo type('vimscript')
echo type([])
echo type({})
输出结果:
0
1
1
3
4
2
5
0
1
3
4
(2) function({name})
返回一个指向名为name的函数的引用类型变量。函数的名字可以是内置函数,也可以是用户自定义函数。别忘了用户自定义函数和函数引用类型变量的名字首字母必须大写。
(3)islocked({expr})
功能:查看指

本文详细介绍了VimScript中用于操作变量的内置函数,包括type()检查数据类型,islocked()检测锁定状态,getbufvar()和setbufvar()读写缓冲区变量,getwinvar()和setwinvar()处理窗口变量,gettabvar()和settabvar()管理tab页变量,以及gettabwinvar()和settabwinvar()操作特定tab页窗口变量。此外,还提到了garbagecollect()函数用于处理循环引用的内存泄漏问题。
最低0.47元/天 解锁文章
5725

被折叠的 条评论
为什么被折叠?



