随笔分类 -  JS

JS基础
摘要:这个问题的起因:review公司项目的时候,发现很多如下的代码(mock) 先是一个工具类Util.ts class NumberUtil { static ToInt(num?: Number): number { num = num || 0; return Math.floor(num); } 阅读全文
posted @ 2022-01-17 11:25 老胡Andy 阅读(3121) 评论(1) 推荐(0) 编辑
摘要:本文简述如何在TypeScript下实现AOP (aspect oriented programming) 面向切面编程。 什么是AOP,我的理解是将特定功能的代码切入到某个已经封装好的对象、类或函数的执行过程中。 之前的一篇文章讲述过如何用decorator、高阶函数实现aop。这里再追加一种实现 阅读全文
posted @ 2021-08-15 16:40 老胡Andy 阅读(297) 评论(0) 推荐(0) 编辑
摘要:什么是编程范式(programming paradigm)? 编程范式是依据编程语言的特征对其分类的方式。 Programming paradigms are a way to classify programming languages based on their features. 申明式与指 阅读全文
posted @ 2021-07-26 23:37 老胡Andy 阅读(603) 评论(0) 推荐(0) 编辑
摘要:JS解构的用法想必大家都知道,但解构时可以赋予别名大家就不一定都了解了。 起因:在公司项目中希望通过传入的参数动态生成组件标签。 解决方式:对入参解构,赋予别名,并使用别名作为组件标签。 先解释JS中解构的别名 const obj = { x: 1 }; //otherName为x的别名 const 阅读全文
posted @ 2021-06-04 15:26 老胡Andy 阅读(3957) 评论(0) 推荐(0) 编辑
摘要:Performance中的LCP (Largest Contentful Paint),根据官方定义,就是页面中Size最大区域的渲染时间。 https://web.dev/lcp/ 所以,如果页面中有些区域(比如一个复杂的控件)渲染时间较久,一定要有比它更大的区域可以快速渲染。 比如以下例子: 三 阅读全文
posted @ 2021-01-04 18:25 老胡Andy 阅读(549) 评论(0) 推荐(0) 编辑
摘要:待续 阅读全文
posted @ 2020-11-29 13:36 老胡Andy 阅读(154) 评论(0) 推荐(0) 编辑
摘要:关于require和import,先明确一些基础概念 1:require属于commonjs(ES5)规范,import属于ES6规范。 2:require/export 一般用于服务端(NodeJS)开发。 import由于是ES6规范,需要使用babel-loader转换为require 3:浏 阅读全文
posted @ 2020-11-20 20:58 老胡Andy 阅读(613) 评论(0) 推荐(0) 编辑
摘要:我们知道React中的Class组件,其事件处理函数要么bind(this),要么用箭头函数( ()=> ),否则this指针会是undefined 原因如下: class Logger { printName(name = 'there') { this.print(`Hello ${name}` 阅读全文
posted @ 2020-11-19 20:52 老胡Andy 阅读(223) 评论(0) 推荐(0) 编辑
摘要:1:Object.assign() 把source对象中所有可枚举的属性copy到target对象中。 可以用来合并两个对象的属性。 const target = { a: 1, b: 2 }; const source = { b: 4, c: 5 }; const returnedTarget 阅读全文
posted @ 2020-11-18 21:29 老胡Andy 阅读(1077) 评论(0) 推荐(0) 编辑
摘要:问题1 :ES6中的class 与 ES5中function的关系 ES6 中: class Person { constructor(name) { this.name = name; } sayHello() { return 'hello, I am ' + this.name; } } va 阅读全文
posted @ 2020-11-18 19:07 老胡Andy 阅读(85) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示