、js 相关

隐式类型转换

javascript 复制代码
let num1 = '10'
let num2 = 10
console.log(num1 + num2) // 1010
console.log(num1 - num2) // 0
// 尝试类型转换
console.log('1.23' == 1.23) // true 字符串和数字可以互相转换
console.log(0 == false) // true 非零数值被视为真(true)
console.log(null == undefined) // true

判断 值和类型

对象引用比较(即比较地址)

javascript 复制代码
console.log(null === null) // true
console.log(undefined === undefined) // true
console.log(NaN === NaN) // false 表示无法表示为数字的任何数值
console.log(new Object() === new Object()) // false 对象引用(即地址)并不相等
console.log({} === {}) // false 比较对象按引用而不是值

typeof

javascript 复制代码
console.log(typeof NaN) // number 历史原因和设计决策
console.log(typeof 100) // number
console.log(typeof 'str') // string
console.log(typeof false) // boolean
console.log(typeof undefined) // undefined
console.log(typeof function fn() {}) // function
console.log(typeof new Object()) // object
console.log(typeof {}) // object
console.log(typeof null) // object
console.log(typeof [1, 2]) // object

instanceof

javascript 复制代码
console.log([1, 2] instanceof Array === true) // true
console.log({} instanceof Array === true) // false
console.log(new Object() instanceof Object === true) // true
console.log({} instanceof Object === true) // true

复合函数 ~ 柯里化

箭头函数hello和happy

javascript 复制代码
const hello = name => {
    return `hello ${name}`
}
const happy = name => {
    return `${name} :`
}

柯里化函数compose高阶函数,接受两个函数作为输入,并返回一个新的函数

javascript 复制代码
const compose = (f, g) => {
    return function (x) {
        return f(g(x))
    }
}

实际上先调用happy('你好')得到了"你好 :", 然后将这个字符串传递给了hello函数

javascript 复制代码
const happyHello = compose(hello, happy)
console.log(happyHello('你好')) // hello 你好 :
相关推荐
liangshanbo12154 小时前
写好 React useEffect 的终极指南
前端·javascript·react.js
哆啦A梦15886 小时前
搜索页面布局
前端·vue.js·node.js
_院长大人_6 小时前
el-table-column show-overflow-tooltip 只能显示纯文本,无法渲染 <p> 标签
前端·javascript·vue.js
SevgiliD6 小时前
el-table中控制单列内容多行超出省略及tooltip
javascript·vue.js·elementui
要加油哦~7 小时前
JS | 知识点总结 - 原型链
开发语言·javascript·原型模式
哆啦A梦15887 小时前
axios 的二次封装
前端·vue.js·node.js
阿珊和她的猫7 小时前
深入理解与手写发布订阅模式
开发语言·前端·javascript·vue.js·ecmascript·状态模式
yinuo8 小时前
一行 CSS 就能搞定!用 writing-mode 轻松实现文字竖排
前端
snow@li8 小时前
html5:拖放 / demo / 拖放事件(Drag Events)/ DataTransfer 对象方法
前端·html·拖放
爱看书的小沐8 小时前
【小沐杂货铺】基于Three.js渲染三维风力发电机(WebGL、vue、react、WindTurbine)
javascript·vue.js·webgl·three.js·opengl·风力发电机·windturbine