解读js中的$符号

说实话,早先我以为$在js中是有特殊含义的符号,便在网上到处去搜它的意义和用法,可始终无果。

 

我在本地也尝试着用$符号组合一些变量,甚至单独用它当做一个变量都可以使用,故我就猜测js并没有赋予$符号含义,同"_"等符号是一样的可以当做变量或变量的一部分使用。

不过,正是这个没有用的符号却创造出了各种灵活多用的变化。

 

写过php或做过linux开发的朋友们都很熟悉$符号,没错,这就是它们的变量标识符,所以很多人喜欢也把它作为js的变量前缀。

 

First~咱先在控制台验证一下$符:

我先初始化创建一个对象,而对象中模拟3种情况的变量:

函数中的局部变量:$a1_2

成员变量:$a1_3

成员变量:$$a1_4

 

验证一:发现$是变量的连接符

验证二:发现$还是变量的连接符,且并不可以用作地址引用

验证三:发现$也不是全局变量的声明符,所以$只是变量的连接符

 

既然$只是变量的连接符,那不就毫无用处吗?~~~~NO···NO···NO····┑( ̄Д  ̄)┍

下面列举几个例子来详解下$的作用。

 

Second~作为全局函数的应用:

见过JQuery的玩家应该会见过$(document).这样的语句,我觉得很高大上,就好像是js的特殊语法一样,起初我也是这样认为的。

不过,如果把这个语句改成myFunc(document).xxxx是不是瞬间就看出了它的本质,所以$()这就是一个普通的函数,只不过在JQuery中把它定义了出来,而可以直接用。

然而对于不同js脚本,$()的功能也不同,你也可以在自己的框架中重写$()方法,或许我们也可以把它改成下面这样:

直接获取ID,虽然没什么用,但用法是可以借鉴的。

 

Third~定义js脚本的关键字变量:

如果你在开发js脚本,而框架中必然要定义一些变量,而你又不希望用你脚本的人在定义变量的时候与你的变量重名,导致脚本中的变量被覆盖,这时,就可以使用$符号来进行标记一下哪些是你的脚本中的变量。

当然,同样的方案也可以用“_”来标记,但“_”太常用了,因为它在任何语言中都无任何含义,很多人必然会使用“_”来定义变量,而“$”在其它的语言中就无法像“_”一样来使用,比如说PHP,所以在js中$作为变量标记符是最好的选择。

在AngularJS中的控制器就是这么做的:

 

 

是不是很有趣~<( ̄︶ ̄)↗[GO!]

转载于:https://www.cnblogs.com/wujianbufengsao/articles/6835870.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值