javaScript&ES6&jQuery

前言

工作中学习和使用过程中遇到的开发问题和发现
博客地址:芒果橙的个人博客 【http://mangocheng.com】

一、原生js

1. 新发现

  • 删除对象属性:delete this.object.propertyName

  • splice(index,howmany[,item1,…item6]) 从数组中添加/删除项目: index–必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。 howmany–必需。要删除的项目数量。 item–向数组中添加是新数据

  • 图片上传:https://www.cnblogs.com/dearxinli/p/4717047.html

  • window.opener父窗口对象 ,如使用弹窗打开新窗口:Aparent打开新窗口Bson,Bson里使用则调用到了Aparent窗口对象

  • 事件的传递:postMessage和addEventListener

  • js事件多次初始化,造成点击一次,触发多次事件的问题,所以要先清空事件再添加:

    $("#belongBtn").off("click").on("click",function() {
    self.belongYsxx();
    });
    
  • 控制台输出美化

    console.log("%c[复用,id] " + id + ":", "color: blue;font-size:13px");
    

二、ES5/6

1. ES6

  1. 箭头函数()=>{ }
    ()中是放参数的,如果参数只有一个,那么()可以省略;并且如果() 中的直接作为返回值,那么{}也可以直接省略
    x => xx
    上面的箭头函数相当于
    function(x){ return x
    x; }
  2. 常量:const PI=3.1415
  3. 作用域:实现作用域隔离 { }
  4. this:指向定义时的函数体
  5. 异步对象Promise: new Promise((resolve,reject)=>{ // 异步方法 }); 调用方获取到该对象,可继续.then
    点击传送

2. 其他

  1. let、var、const变量的区别

    • var:可以重复定义同一个变量名;没有块级别作用域;会自动提升作用域顶端;定义了就成为全局对象window的属性
    • let:同作用域内不可以重复定义同一个变量;有块级别作用域,会有暂时性死区,必须先声明才能使用;不会成为全局对象的属性(window)
    • const:常量,必须赋值且值不可变;修饰对象时,指向的对象不变,但对象内部的值(属性)可变;不会影响到window
    • const和let有很多的相同点,区别就是const赋值后不可变
      参考链接1参考链接2
    • 使用场景:默认使用const去定义全局变量;值需要改变使用let,替代var
  2. 异步变“同步”的方法,api调用方法后,再继续调用.then方法: api.getRyxx(()=>{}).then(()=>{});

  3. 数组包含数据的方法:arr.incluedes(“name”);

  4. 字符串方法

    // 替换
    str.replace("{{}}","res");
    

三、jQuery

1. 相关知识点

  1. select 下拉选择框的事件
<select id="mySelect">  
  <option value="1">one</option>  
  <option value="2" selected="selected">two</option>  
  <option value="3">three</option>  
</select>
$(document).ready(function(){  
    $('#mySelect').change(function(){  
      alert($(this).children('option:selected').val());  
      var p1=$(this).children('option:selected').val();//这就是selected的值  
      var p2=$('#param2').val();//获取本页面其他标签的值  
      window.location.href="xx.php?param1="+p1+"m2="+p2+"";//页面跳转并传参  
    })  
})  
  1. 删除子元素
$(".p").empty();	//不会删除自己		//删除内部所有子节点
$(".p").remove();	//会删除自己			//删除当前子节点(绑定的不能用)
$(".p").detach();	//会删除自己			//删除当前子节点(绑定的能用)
  1. 获取子元素中,所有被选中的复选框
 $(".parent").find("input[type=checkbox]:checked")
  1. each 循环中,return false就是相当于continue,而return true就是相当于break
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芒果-橙

谢谢啦!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值