随笔分类 -  JavaScript

摘要:不管在React或Vue中,将一个变量赋值给src属性,当修改这个变量的值时,video播放的还是原来的视频。 Vue中 React中 动态修改videoUrl的值时,播放的视频,是不会跟着地址动态切换的,我们需要让video重新加载新的源(地址),将新的地址,赋值给video的src属性,然后执行 阅读全文
posted @ 2019-12-05 11:15 兔子先生i 阅读(17713) 评论(3) 推荐(0)
摘要:for..of是ES6中引入的新特性,它主要的作用是:循环一个可迭代的对象。 它可以循环遍历,数组、字符串、Set对象等等,先来看两个简单的例子: 遍历字符串 遍历数组 遍历对象 其实遍历对象的时候,会报一个错误:“Uncaught TypeError: obj is not iterable” , 阅读全文
posted @ 2019-12-04 20:31 兔子先生i 阅读(1143) 评论(0) 推荐(0)
摘要:reduce()的使用 reduce()方法为归并类方法,最常见的应用场景就是,计算数组中每一项的总和。 reduce()方法会遍历数组的每一项,它接收两个参数: 第一个参数是:每次遍历都会调用的函数,而这个函数又接收四个参数,分别为:前一个值、当前项、项目的索引和数组对象, 而这个函数的返回值,会 阅读全文
posted @ 2019-11-27 20:55 兔子先生i 阅读(2444) 评论(0) 推荐(0)
摘要:字符串只能是数字、字母和中文组成,不能包含特殊符号和空格。 阅读全文
posted @ 2019-07-03 12:01 兔子先生i 阅读(21160) 评论(0) 推荐(0)
摘要:isNaN 当我们向isNaN传递一个参数,它的本意是通过Number()方法尝试将这参数转换成Number类型,如果成功返回false,如果失败返回true。 所以isNaN只是判断传入的参数是否能转换成数字,并不是严格的判断是否等于NaN。 例子: 因为没有将“测试”成功转换成Number类型, 阅读全文
posted @ 2019-06-08 11:13 兔子先生i 阅读(6964) 评论(0) 推荐(3)
摘要:全屏模式 退出全屏模式 阅读全文
posted @ 2019-04-30 12:45 兔子先生i 阅读(2715) 评论(0) 推荐(0)
摘要:在JavaScript中,apply、call、bind这个三个方法,它们的作用都是为了改变某个函数运行时的上下文, 也就是改变函数体内的this指向。 在一个函数里,存在“定义时上下文”、“运行时上下文”,而且上下文是可以改变的。 apply方法 apply方法接收两个参数,第一个参数是:“上下文 阅读全文
posted @ 2019-03-05 09:37 兔子先生i 阅读(250) 评论(0) 推荐(0)
摘要:模块化开发,可以让代码易于扩展、便于日后维护。 ES6中的模块化 我们先了解一下 export(导出) 和 import(导入) 这两个关键字。 新建一个文件a.js 并且导出变量test 导入变量test 来源是a.js 然后输出test 如果想导出多个变量: 如果你不想暴露模块当中的变量名字,可 阅读全文
posted @ 2019-03-01 14:57 兔子先生i 阅读(213) 评论(0) 推荐(0)
摘要:首先大家都知道javascript是单线程语言。 什么是单线程呢?比如我们去车站买票,只有一个售票窗口,大家排队买票,需要前面的人买完票,后面的人才能买票。 那为什么javascript不能是多线程呢? 这主要和它的用途有关。假如javascript可以多线程,例如操作DOM元素,一个线程往DOM里 阅读全文
posted @ 2019-02-26 16:45 兔子先生i 阅读(239) 评论(0) 推荐(0)
摘要:什么是ajax AJAX 是一种用于创建快速动态网页的技术。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。 这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新,也就是我们所说的局部更新。 简单示例 XMLHttpRequest 对象 如果需要使用ajax 我们 阅读全文
posted @ 2018-12-21 17:41 兔子先生i 阅读(518) 评论(0) 推荐(0)
摘要:不同浏览器有不同的差异,一般时间格式是“2018-11-13”,这种格式在Chrome下是可以正常执行的,不过在ie浏览器里面 就会变成NaN 解决方法:将时间转换成“2018/11/13” 这种格式即可。 转换方法有很多,如:Date.parse(str.replace(/-/g,"/")) st 阅读全文
posted @ 2018-11-13 14:13 兔子先生i 阅读(324) 评论(0) 推荐(0)
摘要:第一步:安装模块化包 第二步:安装成功后,在webpack.config.js文件找到module 然后在rules里面添加一个新的规则 代码如下 然后打包一下,就可以看到效果了。 阅读全文
posted @ 2018-09-03 17:24 兔子先生i 阅读(1061) 评论(0) 推荐(0)
摘要:一、引入文件 二、html代码 三、js代码 四、完整代码 cropper文档地址:http://www.jq22.com/jquery-info9322 阅读全文
posted @ 2018-08-16 09:44 兔子先生i 阅读(2237) 评论(0) 推荐(0)
摘要:关于兼容性问题,ie8以下的可以使用4.x的版本 一、引入sdk和jq 二、基本配置 region:阿里云服务器地址 accessKeyId:您的key accessKeySecret:您的密码, bucket:你要上传到那个文件夹下; 这个需要在阿里云服务器建立 三、获取文件列表 这个时候一般会出 阅读全文
posted @ 2018-08-08 11:24 兔子先生i 阅读(1914) 评论(0) 推荐(0)
摘要:1.禁止指定元素 2.禁止整个页面 阅读全文
posted @ 2018-08-07 17:22 兔子先生i 阅读(3052) 评论(0) 推荐(0)
摘要://判断是pc还是移动端 function browserRedirect() { var sUserAgent = navigator.userAgent.toLowerCase(); var bIsIpad = sUserAgent.match(/ipad/i) == "ipad"; var bIsIphoneOs = sUserAge... 阅读全文
posted @ 2018-08-06 18:15 兔子先生i 阅读(311) 评论(0) 推荐(0)
摘要:在ECMAScript变量中包含两种不同类型的值:基本类型值和引用类型值。 基本类型值:Undefined、Null、Boolean、Number、String 引用类型值:Object、Array、函数等 基本类型一般就是浅拷贝,引用类型是深拷贝 简单点来说,声明一个数组A、然后将其赋值给B、当修 阅读全文
posted @ 2018-07-30 19:07 兔子先生i 阅读(4094) 评论(3) 推荐(0)
摘要:代码如下: 阅读全文
posted @ 2018-06-26 16:58 兔子先生i 阅读(129510) 评论(0) 推荐(1)
摘要:需要用到的两个属性:previousSbiling和previousElementSibling 所以一般我们会用previousElementSibling 阅读全文
posted @ 2018-03-17 17:47 兔子先生i 阅读(15144) 评论(0) 推荐(2)
摘要:正则表达式如下: /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/ 阅读全文
posted @ 2018-03-12 15:19 兔子先生i 阅读(161) 评论(0) 推荐(0)