javascript框架设计(读书笔记)
2024-09-04 21:24:14
我觉得多看几本进阶的书
与其十本书读一遍,不如一本书读十遍
读书的启示:
- 读好书(看推荐)
- 精读(重复看)
- 能读厚书(javascript权威指南)
Object.keys
Object.keys=Object.keys||function(obj){
var a=[];
for(a[a.length] in obj);
return a;
}
-----理解
obj={a:1, b: 2};
let a=[];
for (i in obj) {
//a[a.length] a.length=0 添加a
a[0]=a;
a[1]=b;
}
合并多个对象
let o1 = {a: 1};
let o2 = {b: 2,c:2};
let o3 = {c: 3};
console.log(Object.assign(o1, o2, o3));
因为是浅拷贝 如果想深拷贝JSON.stringify
let o1 = {a: 1};
let o2 = {b: 2,c:2};
extends1=(target,source)=>{
for (let obj in source){
target[obj]=source[obj]
}
return target
};
console.log(extends1(o1, o2));
类数组
Array.from([1,2,3,4],v=>v+v)
Array.from({length:4},(v,i)=>i)
Array.prototype.slice.call()//切割字节
//[].slice.call('123') //[1,2,3]
类型判断
typeof null //"object"
typeof document.all //"undefined"
instanceof 判断复杂类型
Object.prototype.toString
isNaN 的问题
* Number.isNaN来解决
* Object.is() 来解决
数组查找
indexOf 找到返回索引 没找到返回-1
[1,2,3,4].indexOf(1)
find 找到返回目标值,没找到返回undefined
console.log([1, 2, 3, 4].find(v => v == 100));
findIndex 找到返回索引,没找到返回-1
console.log([1, 2, 3, 4].find(v => v == 100));
every 返回值Boolean,全部查找,找到返回true,没找到返回false(全部)
some 找到就返回Boolean(至少)
filter 返回一个数组
includes 返回Boolean 找到返回true 没找到返回false
console.log([1, 2, 3, 4, 5, 5].includes(100));
startsWith() 返回Boolean, 匹配开头
endsWith() 返回Boolean,匹配结尾
repeat() 复制几份
trimStart() trimeEnd() trim()
charAt(1) 返回字符串第1位的数字
substr() 参数: 开始的位置,个数
substring() 参数: 开始的位置,结束的位置
模块
Comjs
let a=require('./xxx')
模块特点:
* 扩展性
* 高可用
* 稳定性
p79页
.......................................................................................................................................................................................................#
最新文章
- spring源码分析之<;context:component-scan/>;vs<;annotation-config/>;
- About_类与对象03
- 使用ajax登录格式
- Cookie实例,理解cookie
- Java 中判断两个对象是否相等
- SQL技术内幕-10 in和exists 性能比较
- spring mvc 初步接触学习笔记
- Summary: How to calculate PI? Based on Monte Carlo method
- HBase笔记--安装及启动过程中的问题
- 多校联赛2 Problem2 Warm up 求桥的数目+缩点后的树的直径 当时被不知道原因的爆栈爆到无语了。。
- Android实现购物车功能
- JSON字符串转为JSON对象
- cmd登录系统用户
- luogu4365 秘密袭击 (生成函数+线段树合并+拉格朗日插值)
- 2018-2019 ICPC, NEERC, Southern Subregional Contest (Online Mirror, ACM-ICPC Rules, Teams Preferred)
- 当使用xmapp时session序列化生成的文件的路径
- CMDB服务器管理系统【s5day89】:采集资产之汇报信息
- 一张图教你读懂AI简史
- A记录和CNAME记录的区别
- Linux本地解析文件/etc/hosts说明【原创】
热门文章
- 记录vue项目 用hbuilder离线打包集成极光推送 安卓篇
- vue+element 表格按需合并
- vim编辑器-Linux从入门到精通第四天(非原创)
- mysql 连接数用完,root也无法登陆的处理方法
- Linux源码编译nginx
- ansible自动化运维04
- QElapsedTimer定时器记录程序执行时间
- system.exit(int status)中status值不同时的区别
- webUploader大文件断点续传学习心得 多文件
- LOJ 3119: 洛谷 P5400: 「CTS2019 | CTSC2019」随机立方体