Ecma262规定标识符中可以使用ASCII扩展字符和Unicode字符:
var 安静的美男子 = {高: 149, 富: 0, 帅: undefined};
var ಠ_ಠ = 安静的美男子.帅;
写这样萌的代码,真的不好吗?
在浏览器中执行类似这样的代码有什么隐患吗?
使用中文或颜文字做变量名除了不支持驼峰格式外,还有那些缺点?
高洛峰2017-04-10 14:39:31
其实没什么不好,但是
软件开发应该是国际化程度非常高的一个职业,相对于约定成俗的编程习惯,中文在此谈不上有任何优势,而且根本没这个必要。
还有一个很复杂的问题,中文输入法一般都是默认使用全角字符的。我们在使用英文写代码的时候并不需要切换语言,但是用中文变量名在输入一部分符号的时候还是要切换成英文(或者是半角字符),挺麻烦的。【如果说非要设置成在中文状态下默认就使用半角符号,作为强迫症我认为这种行为不能忍受,需要打死】
私下里用用可以,但是我还是倾向于,我希望外国友人也能看懂我的代码。
迷茫2017-04-10 14:39:31
这是完成中华民族伟大复兴的必经之路。
这是中国崛起的前奏。
“使用汉字做变量名,从我做起”
使用中文做变量名的程序,在运行时,通常都会弹出一句话:不赞不是中国人。
阿神2017-04-10 14:39:31
挺有意思的问题。不过既然楼主是问缺点,那就专门谈谈缺点。
var 一=1,——=2;var 二=一-——;
你知道二
是多少么?var 对象={};对象["^_^ "]=1;对象["^_^"]=2;
你真的分得清么?高洛峰2017-04-10 14:39:31
外国人看到你写的东西,和你看到下面这段代码,感觉差不多。自行体会一下:
#define 喵喵喵 main
#define 喵喵 int
#define 喵 (
#define 喵喵呜 )
#define 喵喵喵喵 {
#define 喵呜喵 }
#define 喵呜喵呜喵 printf
#define 呜 "\n"
#define 喵呜喵呜 return
#define 呜喵 0
#define 喵呜 ;
#include <stdio.h>
喵喵 喵喵喵 喵 喵喵呜
喵喵喵喵
喵呜喵呜喵 喵 "喵喵喵! " 呜 喵喵呜 喵呜
喵呜喵呜 呜喵 喵呜
喵呜喵
巴扎黑2017-04-10 14:39:31
有时使用中文反而方便,比如多语言切换:
var lang={
locale: 'zh-cn',
'首页':'首页',
'菜单':'菜单'
}
var lang={
locale: 'en-us',
'首页':'Home',
'菜单':'Menu'
}
<li><%= lang['首页'] %></li>
<li><%= lang['菜单'] %></li>
通过其他的手段引入不同的lang
变量,使用的时候使用中文属性,可以增加可读性,也不会因为词汇量匮乏或者命名不规范造成误解
巴扎黑2017-04-10 14:39:31
如果能做到比较智能,其实也没大家想的那么噁心,起码在某些非专业的又需要部分编程开发的领域可以降低学习门槛
因为没有关键字高亮,所以我就手动高亮下
如果 我的年龄 大于 十八 那么
我的类型 是 成年人