js基础
chenxiang0708
这个作者很懒,什么都没留下…
展开
-
防抖与节流基本思路
```javascript<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-s...原创 2020-05-01 01:24:13 · 336 阅读 · 0 评论 -
使用装饰者模式实现ajax loading效果
var myajax = $.ajax;$.ajax = function (params) { alert('load') myajax.call(this, params)}$.ajax({ url: 'http://xuexi.hzcqt.com/api/v1/jpkc/course/category_tree.xhtml', type: "GET",...原创 2020-01-30 23:27:50 · 142 阅读 · 0 评论 -
null只有和null和undefined比较才会返回true
什么是null,undefinedjavascript高级程序设计:使用var声明变量但未对其加以初始化时这个变量的值是undefined。null值则是表示空对象指针。所以typeof null返回objecttypeof undefined // undefinedtypeof null // objectnull只有和null和undefined比较才会返回tru...原创 2020-01-15 13:43:11 · 838 阅读 · 0 评论 -
js执行顺序一步步解析
var set1=setTimeout(function () { console.log('s1') var p0=new Promise(function (resolve, reject) { resolve(789); }).then(function (res) { console....原创 2020-01-10 14:20:47 · 318 阅读 · 0 评论 -
通过普通函数调用获取实例
let a=(function(){//函数自执行后返a=function(){return new Fn()} function Fn(){ this.customAlert=function(){ alert(1) } }; return function(){ return new Fn() ...原创 2019-12-24 17:48:58 · 166 阅读 · 0 评论 -
jquery的ready与原生onload的区别
window.onload=function(){ console.log(111)}window.onload=function(){ console.log(222)}$(document).ready(function(){ console.log(333)})$(document).ready(function(){ console.log...原创 2019-12-24 13:34:49 · 141 阅读 · 0 评论 -
this指向注意点
下面的两段代码完美的说明了this指向,谁调用指向谁var length=10;function fn() { console.log(this.length)}var obj={ length:11, arr:[fn,'222','222','111'], q:function () {//这里是this.arr也就是arr这个数组调用,所以返回了数组长...原创 2019-12-16 16:35:35 · 279 阅读 · 0 评论 -
避免构造函数的constructor被替换
function Aaa(){}Aaa.prototype.name = 'hello';Aaa.prototype.age = '30'var a1 = new Aaa();alert( a1.constructor );//Aaa//这种写法是json对prototype的覆盖Aaa.prototype = { name : 'hello', age : 30};v...原创 2019-12-15 21:29:18 · 136 阅读 · 0 评论 -
通过getElementsByTagName具体是怎么更改dom属性的
<body> <p>111</p> <p>222</p> <p>333</p><script>var p=document.getElementsByTagName('p');console.log(typeof p)//object// 0: p// 1: p// ...原创 2019-12-15 21:19:04 · 1587 阅读 · 0 评论 -
promise的一些特点
promise基本概念//resolve进入then,reject进入catchnew Promise(function (resolve, reject) { resolve(123);}).then(function (res) { console.log(res)//123})new Promise(function (resolve, reject) { ...原创 2019-12-10 10:46:08 · 335 阅读 · 0 评论 -
手写each,以及个人对call的理解
var arr = [2, 3, 1, 4324234, 213];//我(callback) 啥家务都不会,//用call 就请了个保姆(arr)做家务,//arr保姆不止会做家务,顺便还能帮我照看小孩,以及倒垃圾//第一个arr[i] 每当我不想动的时候就让保姆干活//第二个arr[i] 做完后给我个标准格式的答复function each(arr, callback) { ...原创 2019-11-06 23:16:58 · 133 阅读 · 0 评论 -
个人理解的异步
这篇文章是我看了多篇博客后自己的归纳总结:给有需要的朋友一些帮助:什么是同步,什么是异步简单表达就是同步任务指的是,在主线程上排队执行的任务,只有前一个任务执行完毕,才能执行后一个任务;异步任务指的是,不进入主线程、而进入"任务队列"(task queue)的任务,只有"任务队列"通知主线程,某个异步任务可以执行了,该任务才会进入主线程执行。当然这篇文章主要是讲异步的详情首先要了解一个知...原创 2019-05-16 21:55:52 · 98 阅读 · 0 评论 -
for循环时var变量的作用域情况
var的作用范围是在函数开始阶段和函数执行完成之前都是存在的1.在非函数的情况下使用var 来for循环,此时的var会变成 全局变量for(var i=0;i<5;i++){} console.log(i)//5function fn(i) { console.log(i)}fn(i)//52.在函数内用var 来for循环,此时的function fn1() { ...原创 2019-03-13 15:59:49 · 1502 阅读 · 0 评论 -
一文读懂异步在for循环下的不同表现
// var出的变量是函数级作用域,// 作用范围是在函数开始阶段和函数执行完成之前内都是存在的;并且如果该函数内部还存在匿名函数等特殊函数,这个var出的变量在匿名函数中任然可以用; // let出的变量作用域是 块作用域,在离开某一代码块,该变量就会被销毁不存在. //这段代码的步骤简述//0.创建一个var i到顶部,这个时候的i是个全局变量,因此只有一个全局变量i,此处可以了...原创 2019-03-15 20:01:48 · 211 阅读 · 0 评论 -
作用域之全局变量和局部变量
啥是作用域:一句话概括就是变量和函数的可访问范围作用域分为三种:全局作用域(全局变量),局部作用域(局部变量),块级作用域(es6新增)什么是全局变量(在函数外定义的变量)什么是局部变量(在函数内定义的变量)为什么刚学习js的时候都说要少用全局变量呢?因为全局变量可以被每个函数调用,可能不经意的修改就影响到其他函数var num=1;if(1==1){ var num=2; ...原创 2019-03-10 16:45:04 · 3490 阅读 · 0 评论