前言
工作中学习和使用过程中遇到的开发问题和发现
一、原生js
1. 新发现
删除对象属性:delete this.object.propertyName
splice(index,howmany[,item1,…item6]) 从数组中添加/删除项目: index–必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。 howmany–必需。要删除的项目数量。 item–向数组中添加是新数据
window.opener父窗口对象 ,如使用弹窗打开新窗口:Aparent打开新窗口Bson,Bson里使用则调用到了Aparent窗口对象
事件的传递:postMessage和addEventListener
js事件多次初始化,造成点击一次,触发多次事件的问题,所以要先清空事件再添加:
1
2
3$("#belongBtn").off("click").on("click",function() {
self.belongYsxx();
});控制台输出美化
1
console.log("%c[复用,id] " + id + ":", "color: blue;font-size:13px");
二、ES5/6
1. ES6
- 箭头函数()=>{ }
()中是放参数的,如果参数只有一个,那么()可以省略;并且如果() 中的直接作为返回值,那么{}也可以直接省略 x => x*x 上面的箭头函数相当于 function(x){ return x*x; }
- 常量:const PI=3.1415
- 作用域:实现作用域隔离 { }
- this:指向定义时的函数体
- 异步对象Promise: new Promise((resolve,reject)=>{ // 异步方法 }); 调用方获取到该对象,可继续.then
点击传送
2. 其他
let、var、const变量的区别
异步变“同步”的方法,api调用方法后,再继续调用.then方法: api.getRyxx(()=>{}).then(()=>{});
数组包含数据的方法:arr.incluedes(“name”);
字符串方法
1
2// 替换
str.replace("{{}}","res");
三、jQuery
1. 相关知识点
- select 下拉选择框的事件
1 | <select id="mySelect"> |
1 | $(document).ready(function(){ |
- 删除子元素
1 | $(".p").empty(); //不会删除自己 //删除内部所有子节点 |
- 获取子元素中,所有被选中的复选框
1 | $(".parent").find("input[type=checkbox]:checked") |
- each 循环中,return false就是相当于continue,而return true就是相当于break