相关疑难解决方法(0)

双星号**是一个有效的Javascript运算符吗?

我在代码战中解决了一个kata,当我遇到双星号来表示它的强大功能时,我正在查看其他一些解决方案.我做了一些研究,可以看到这是python中的一个有效的运算符,但在JavaScript文档中却看不到它.

var findNb = m =>
{
  var n = Math.floor((4*m)**.25);
  var sum = x => (x*(x+1)/2)**2;
  return sum(n) == m ? n : -1;
}
Run Code Online (Sandbox Code Playgroud)

然而,当我在代码大战上运行此解决方案时,它似乎有效.我想知道这是否是ES6中的新功能,虽然我没有发现它.

javascript math operators

28
推荐指数
3
解决办法
7789
查看次数

为什么按位"不是1"等于-2?

假设我们1在基数2中有这个数字是:

00000000000000000000000000000001
Run Code Online (Sandbox Code Playgroud)

现在我想翻转所有位以获得以下结果:

11111111111111111111111111111110
Run Code Online (Sandbox Code Playgroud)

据我所知,解决方案是使用~(按位NOT运算符)翻转所有位,但结果~1-2:

console.log(~1); //-2
console.log((~1).toString(2)); //-10 (binary representation)
Run Code Online (Sandbox Code Playgroud)

为什么我会得到这个奇怪的结果?

javascript numbers bitwise-operators

27
推荐指数
5
解决办法
5168
查看次数

什么是"new.target"?

ECMAScript 2015规范提到关键字(或单词?)new.target正好3次 - 在14.2.3中 1次:

通常,Contains不会查看大多数函数表单但是,Contains用于检测ArrowFunction中的new.target,this和super用法.

14.2.16中两次:

ArrowFunction不为arguments,super,this或new.target定义本地绑定.对ArrowFunction中的参数,super,this或new.target的任何引用 都必须解析为词汇封闭环境中的绑定

MDN提到它,但非常模糊,页面不完整.

巴别塔似乎不支持它.尝试在函数(箭头或其他)中使用new.target时出现语法错误.

它是什么,它应该如何使用?

javascript ecmascript-6

25
推荐指数
2
解决办法
6139
查看次数

在ES6中遵循变量定义的模板文字(反引号)的目的是什么?

在GraphQL中,您可以编写类似这样的内容来定义查询:

const USER_QUERY = gql`
  {
    user(id: 2) {
      name
    }
  }
`
Run Code Online (Sandbox Code Playgroud)

在样式化组件中,您可以像这样定义样式化组件:

const Button = styled.button`
    background-color: papayawhip;
`
Run Code Online (Sandbox Code Playgroud)

这是什么语法?我知道使用模板文字你可以使用这种语法来修改变量:${foo}但是我从未见过使用它.任何指导将不胜感激.

javascript ecmascript-6 graphql template-literals styled-components

25
推荐指数
2
解决办法
872
查看次数

javascript中的单加运算符

刚看到下划线的来源:

if (obj.length === +obj.length) {
    ...
}
Run Code Online (Sandbox Code Playgroud)

怎么plus办?我以前从未见过这个.

它被认为是开发人员的好习惯吗?

javascript

24
推荐指数
1
解决办法
7257
查看次数

Javascript运算符!==

!==运算符和!=运算符之间有什么区别.它是否与===运算符类似,它比较值和类型?

javascript operators

23
推荐指数
3
解决办法
1万
查看次数

JavaScript中的双倍符号

这是什么意思:>>在JavaScript中意味着什么?

从这个角度来看:

document.onkeydown = document.onkeyup = function(e,v,y,k) {
  (i=e.keyCode-37)>>2 || (keys[i] = e.type[5]&&1||(0))
}
Run Code Online (Sandbox Code Playgroud)

javascript

23
推荐指数
2
解决办法
9613
查看次数

对象文字中属性名称周围的方括号是什么意思?

我已经在JS写了一段时间并且没有使用过这种形式:

  dist: {
    files: {
      [bpr + 'lib/Monster.min.js']: ['<%= concat.dist.dest %>']
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

[]:[]
Run Code Online (Sandbox Code Playgroud)

它工作,我只是没有使用它或之前看过它.

javascript ecmascript-6

22
推荐指数
2
解决办法
4228
查看次数

在javascript中进行多项任务?[a,b,c] = [1,2,3]是什么; 意思?

对于项目,开发人员向我们发送了一个.js文件,其代码类似于:

var myList = [1,2,3];
var a,b,c;

[a,b,c] = myList;
Run Code Online (Sandbox Code Playgroud)

它适用于Opera 10.30,Firefox 3.6.x,但对Opera 10.60和Chrome来说并不适用.

这只是好奇心,您是否有任何参考或链接表明此代码符合JS/ECMA标准?

你怎么看?

javascript standards opera google-chrome

20
推荐指数
3
解决办法
7536
查看次数

如何:〜运算符?

我不能谷歌〜运算符来了解更多相关信息.有人可以用简单的语言向我解释它是什么以及如何使用它?

javascript

20
推荐指数
2
解决办法
1821
查看次数