js或ts语法笔记
javascript
-
==和===- ==会自动转换类型比较
- ===严格比较,类型需要相同
- !=和!==同理
-
success?.()相当于success && success(),判断不为空再执行 -
(+”1”)把字符串转换成整数
prototype
prototype 属性允许您向对象添加属性和方法
注意: Prototype 是全局属性,适用于所有的Javascript对象。
1 | function employee(name,jobtitle,born) |
给employee函数添加了salary属性,可以.出来
argument
在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们。
1 | function howManyArgs() { |
注意:与其他程序设计语言不同,ECMAScript 不会验证传递给函数的参数个数是否等于函数定义的参数个数。开发者定义的函数都可以接受任意个数的参数(根据 Netscape 的文档,最多可接受 255 个),而不会引发任何错误。任何遗漏的参数都会以 undefined 传递给函数,多余的函数将忽略。
pipeline写法
1 | data |
相当于fnz(fny(fnx(data))),pipeline写法
纯函数
高阶函数
函数柯里化
1 | function connect(a,b){ |
connect(a,b)=func(c)
connect(mapStateToProps,mapDispatchToProps)(MainPage)
实际上是这样func©(MainPage);
MainPage是赋值给里面的c,而不是对应a,b