我在JavaScript中遇到了不寻常的声明(我在C#中也见过这个):
var x = 1 << 0; // output: 1
为什么以及何时应该使用它?
编辑:我在上下文中看到过这样的声明:
var orderByName = 1 << 0;
var orderByLastName = 1 << 1;
var orderByMiddleName = 1 << 2;
答案 0 :(得分:7)
如果您有一组数字标记要一起使用,那么使用轮班声明它们会更清晰
var S_READ = 1 << 0;
var S_WRITE = 1 << 1;
var S_APPEND = 1 << 2;
var S_CREATE = 1 << 3;
而不是明确地写出两个的权力(1,2,4,8等)
我的猜测是你在类似的背景下看到了这个1 << 0
。
答案 1 :(得分:1)
你不应该。这是多余的。只需写下var x = 1;
。