javascript高级程序设计
这本前端圣经里似乎都是知识点,在这里将其细化一下,更直观,也更方便
kafuka_A
A ship in harbor is safe, but that is not what ships are built for.
展开
-
函数的返回
如下:原创 2024-02-02 22:00:57 · 90 阅读 · 0 评论 -
如何另外“打开”浏览器进行某个页面的访问,window.open()
如何另外“打开”浏览器进行某个页面的访问,window.open()原创 2023-07-27 23:45:00 · 200 阅读 · 0 评论 -
你真的会用async和await么?
你真的会用async和await么?原创 2023-07-19 20:14:21 · 1007 阅读 · 0 评论 -
利用闭包实现一个单例,闭包,单例模式,单例
利用闭包实现一个单例,闭包,单例原创 2023-03-06 20:49:50 · 196 阅读 · 0 评论 -
h5内嵌app,h5图片不展示,crossOrigin=“anonymous“
h5内嵌app,h5图片不展示,crossOrigin="anonymous"原创 2023-02-28 20:26:52 · 744 阅读 · 0 评论 -
js获取时区偏移量,按照服务端时间解析(别基于客户端时区进行转换)
js获取时区偏移量,按照服务端时间解析(别基于客户端时区进行转换)原创 2023-02-21 21:16:32 · 821 阅读 · 0 评论 -
web上传文件需要在代码层面进行类型校验
web上传文件需要在代码层面进行类型校验原创 2022-11-04 11:53:07 · 174 阅读 · 0 评论 -
web需要从文件中读取内容,将内容进行加密上传
web需要从文件中读取内容,将内容进行加密上传原创 2022-11-04 11:28:22 · 513 阅读 · 0 评论 -
console.time和console.timeEnd用法;性能问题如何去定位?怎样可以知道某个代码片段运行了多长时间?
console.time和console.timeEnd用法性能问题如何去定位怎样可以知道某个代码片段运行了多长时间原创 2022-11-03 10:29:17 · 508 阅读 · 0 评论 -
对象的一些方法,Object的一些方法总结;js 判断对象是否为空
Object.assignObject.keysObject.getOwnPropertyNames原创 2022-10-26 10:38:07 · 405 阅读 · 0 评论 -
try catch 一般搭配的是async await 但是当awiat不会返回数据的时候,也是可以用.then的
try catch 一般搭配的是async await 但是当awiat不会返回数据的时候,也是可以用.then的原创 2022-10-20 10:29:40 · 267 阅读 · 0 评论 -
避免多层的if嵌套
避免多层的if嵌套原创 2022-10-20 10:04:35 · 571 阅读 · 0 评论 -
在事件中嵌套事件时return的作用
在事件中嵌套事件时return的作用原创 2022-04-14 19:11:04 · 814 阅读 · 0 评论 -
常用的一些正则法则
常用的一些正则法则原创 2022-04-14 18:49:57 · 247 阅读 · 0 评论 -
try...catch和 await的用法
try...catch和 await的用法原创 2022-03-09 09:23:56 · 2904 阅读 · 0 评论 -
谈一谈javaScript中的addEventListener函数,谈一谈dom中的事件流
谈一谈javaScript中的addEventListener函数,谈一谈dom中的事件流原创 2022-02-09 10:58:58 · 1296 阅读 · 0 评论 -
在函数中声明的变量
javascript语言中,在函数中声明的变量在函数执行进行一创建,当函数执行完毕的时候就会被销毁掉。<script> function getName () { var name = "凡夫俗子"; console.log("函数体访问",name) } getName() ert(name) </script>变量name是在函数中使用var定义的。当函数被原创 2021-03-26 13:08:37 · 932 阅读 · 0 评论 -
if语句中什么时候可以省略大括号?
有大括号的时候大括号里面所有的 都归if管。只有条件为真的时候 才会执行。没有大括号的时候 只有下面的 一句 归if管,也就是说 当只有一句的时候 大括号可以省略 其它的 没区别//注意观察此代码中的if语句 login() { this.$refs.loginFromRef.validate(async (valid) => { //登录前的一个预验证 // console.log(valid) if (!valid) retur原创 2021-03-10 10:13:49 · 5866 阅读 · 0 评论 -
axios中then回调对返回数据赋值是是一个简单的浅拷贝造成的误解
原因: 此时是因为你第一次clone的时候没有输对密码,而git又记录下了这个不正确的密码。所以此时需要: 在Git上清除本地账号密码/保存账号密码解决方案: git中执行以下命令,然后再次进行克隆即可: git config --global credential.helper wincred git credential-manager uninstall...原创 2021-02-06 19:50:35 · 2042 阅读 · 0 评论 -
javascript中的浅拷贝和深拷贝的多种实现
javascript中的浅拷贝和深拷贝的多种实现浅拷贝深拷贝的通俗理解浅拷贝:拷贝对象使用for in循环使用 assign 方法实现使用扩展运算符实现使用JSON实现浅拷贝:拷贝数组使用for in循环使用扩展运算符实现使用slice或concat实现(两个方法写到一个里面了)深拷贝:拷贝对象或者数组(无论数组和对象中又嵌套了什么复杂类型也是可以实现的)使用constructor判断使用Object.prototypy.toString.call()判断使用Array.isArray()判断深拷贝的思路总原创 2020-11-12 18:02:32 · 737 阅读 · 3 评论 -
js中||和&&的三层理解
||与&&用法的三层境界,你属于哪一种?1、简单的布尔值判断 true||false2、表达式转换为布尔值进行一个判断 var a = 1; var b = 2; a1 || b33、短路运算符原创 2021-03-21 17:42:50 · 219 阅读 · 0 评论 -
javascript语句和表达式的区别
表达式:表达式是值、变量和运算符的组合一个表达式可以产生一个值,有可能是运算、函数的调用、有可能是字面量。表达式可以放在任何需要值的地方。算数表达式:1+2包含变量的表达式:x + 2赋值表达式: x=2逻辑表达式: 5>2三元表达式: 5>2 ? true:false语句:JavaScript语句由以下构成: 值、运算符、表达式、关键字和变量名。这5项不是必须同时存在。大多数JavaScript程序都包含许多JavaScript语句。这些语句会按照它们被编写的顺序逐一执行原创 2021-03-03 14:57:10 · 526 阅读 · 1 评论 -
input = file 实现上传文件
input = file 实现上传文件原创 2022-01-20 17:12:22 · 307 阅读 · 0 评论 -
后台返回的数值太大,js中数字太大导致的bug
后台返回的数值太大原创 2022-01-19 10:52:56 · 1108 阅读 · 0 评论 -
for,for in,forEach,for of,详解,一篇讲解所有的for关键字循环
for,for in,forEach,for of,详解,一篇讲解所有的for关键字循环原创 2022-01-12 21:59:02 · 375 阅读 · 0 评论 -
出现undefined的几种情况
出现undefined的几种情况原创 2022-01-04 16:19:51 · 7921 阅读 · 0 评论 -
阻止a连接的默认行为
阻止a连接的默认行为原创 2021-12-28 23:24:59 · 1325 阅读 · 0 评论 -
axios以简写的形式发送post请求
axios以简写的形式发送post请求原创 2021-12-04 22:52:35 · 492 阅读 · 0 评论 -
简单易懂的宏任务和微任务执行顺序
背景很多朋友在写面试题:宏任务与微任务的执行时机时,容易犯迷糊。之前我也写过两篇文章,这次加上详细的讲解,让大家更容易理解。什么是宏任务、微任务?1、首先要称得上是宏任务、微任务的,必须是一个回调函数,例如: setTimeout(getList,5000);这个getList就是一个回调函数2、必须是异步执行的回调函数3、区分宏任务与微任务宏任务渲染事件(如解析 DOM、计算布局、绘制);用户交互事件(如鼠标点击、滚动页面、放大缩小等);JavaScript 脚本执行事件;网络请原创 2021-10-12 10:33:24 · 1526 阅读 · 0 评论 -
async,await如果用不到请求返回的结果左侧其实就不用写赋值或者写解构语法了、axios
logout = ()=> { Modal.alert('提示', '是否确定退出?', [ { text: '取消'}, { text: '退出', onPress: async() => { await API.post('/user/logout', null,{ headers: { authorization: getToken() } }) } ..原创 2021-12-01 10:57:11 · 2280 阅读 · 0 评论 -
axios以简写的形式发送get,post请求
1、post请求,第二个是参数项,没有的话,就直接写个null就行了,然后第三个参数配置请求头之类的 const res = await API.post('/user/logout', null,{ headers: { authorization: getToken() } })logout = ()=> { Modal.alert('提示', '是否确定退出?', [ { text: '取原创 2021-12-01 10:52:46 · 2356 阅读 · 0 评论 -
浏览器新开一个窗口、window.open、window.location.href
1、window.openwindow.open('www.techbrood.com','_blank'); // 这个功能与下面的是等效的<a href="www.techbrood.com" target='_blank'>Link</a> 2、window.location.href// 这个直接就是没有新开窗口,直接在原有的窗口覆盖了一下 window.location.href = 'https://szjsc.citybrain.hangzhou.gov原创 2021-10-25 14:26:51 · 1479 阅读 · 0 评论 -
遍历对象和遍历数组的不同
对象是没有顺序的,遍历时候顺序是不固定的数组是有顺序的,遍历的时候顺序是固定的原创 2021-10-09 14:52:38 · 167 阅读 · 0 评论 -
获取函数剩余参数
es6语法const arguments = [1,5,6,8,9,10];const [context, ...rest] = arguments;console.log(context) // 1console.log(rest) // [ 5, 6, 8, 9, 10 ]巧用数组的shift方法function fn (a,b,c,d) { let firstArguments = Array.prototype.shift.call(arguments) console.l原创 2021-09-26 14:10:20 · 196 阅读 · 0 评论 -
this、apply、call、bind
非常好的一排文章跳转链接this指向问题,手写bind,apply,call原创 2021-09-26 17:49:17 · 66 阅读 · 0 评论 -
Array.prototype.slice.call(arguments)、Array.prototype.shift.call(arguments)
Array.prototype.slice(begin, end)作用:slice() 方法返回一个新的数组,由 begin 和 end 决定的原数组的浅拷贝(包括 begin,不包括end)。原始数组不会被改变。但今天的主题不是它。而是Array.prototype.slice.call(arguments)Array.prototype.slice.call(arguments)作用: 它的作用是把对象/集合转换成数组例子1: <div></div>原创 2021-09-26 10:42:07 · 219 阅读 · 0 评论 -
this指向问题
<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <titl原创 2021-08-25 15:48:31 · 50 阅读 · 0 评论 -
arguments对象转换为数组
将函数里的arguments,转换成一个真正的数组的方法。arguments是个类数组,除了有实参所组成的类似数组以外,还有自己的属性,如callee,arguments.callee就是当前正在执行的这个函数的引用,它只在函数执行时才存在。因为在函数开始执行时,才会自动创建第一个变量arguments对象。一、arguments是个类数组它将实参以数组的形式保存着,还可以像数组一样访问实参,如:arguments[0];它也有自己独特的属性,如:callee;它的长度是实参的个数。那argum原创 2021-08-06 10:40:26 · 470 阅读 · 0 评论 -
this指向改变
call方法的作用是调用函数,并且改变函数的this指向,this指向为call方法的第一项,其余后面的都是参数。apply() 与call()非常相似,不同之处在于提供参数的方式,apply()使用参数数组,而不是参数列表。 var Person = { name: "zs", age: 22, }; function fn(x, y) { console.log(x + "," + y); console.log原创 2021-08-25 16:20:14 · 56 阅读 · 0 评论 -
宏任务于微任务
宏任务于微任务转载 2021-06-17 21:02:09 · 64 阅读 · 0 评论