JavaScript
xingyemeng1202
随便写一些吧,为了那5个金币
展开
-
js数字类型最大值怎么计算出来的
Javascript不详细区分整数类型、浮点数类型以及带符号的数字类型。Javascript使用双精度64位浮点数格式(IEEE 754)来表示数字,因此所有数字本质上都是浮点数。原创 2021-06-22 23:12:30 · 2147 阅读 · 0 评论 -
React 事件处理笔记
需要注意的两点:1.需要在事件绑定的函数中获取事件对象 2.事件绑定函数中的this指向问题疑惑点:什么是public class fields语法一、事件对象作为参数传递事件绑定的函数没有传参function ActionLink() { function handleClick(e) { // 默认有一个事件对象参数,而且是经过包装的不会有兼容性问题 e.preventDefault(); console.log('The link was click原创 2020-11-25 10:16:38 · 122 阅读 · 0 评论 -
正则表达式lastIndex的理解
///****官方解释:The lastIndex is a read/write integer property of regular expression instances that specifies the index at which to start the next match.(lastIndex是正则表达式实例读/写的整数属性,指定开始下一个匹配的索引。)****正则...原创 2018-07-09 15:49:58 · 1256 阅读 · 0 评论 -
正则表达式圆括号和非捕获性圆括号
(x) 捕获性圆括号:匹配x,并捕获匹配项。(?:x) 非捕获性圆括号: 匹配x,但是不捕获匹配项。正则表达式一般情况下的匹配道德字符串称为分组0,按照匹配项中圆括号出现的顺序会获得分组1,分组2……等等例如:console.log(/([0-9])/.exec('3 + 4'));console.log(/(?:[0-9])/.exec('3 + 4'));console....原创 2018-07-23 13:37:41 · 1822 阅读 · 0 评论 -
es6 正则 后行断言
1.认识后行断言//后行断言只关心后边的匹配,如果后边没有匹配项,前面的类似于懒惰,给了一个匹配项那就是贪婪,并且是从右向左的贪婪例一、后行断言的右侧没有匹配项,只有一个后行断言,此时后行断言就类似于懒惰匹配,仅仅匹配到2个数字‘1’ ‘0’/(?<=(\d+)(\d+))/.exec('1053'); //["", "1", "0"]例二、后行断言的右侧只给了一个 $ ,那么...原创 2018-07-24 11:41:19 · 773 阅读 · 0 评论 -
es6 遇到正则表达式
模糊点:对于这个两个正则表达式不理解,读不懂let evalExpr = /<%=(.+?)%>/g;let expr = /<%([\s\S]+?)%>/g;首先是不明白正则表达式中 '?' 符号的含义,也就是懒惰匹配,其次是 [/s/S] 的意思不理解。另外在解决问题中发现自己对于正则表达式 ^ $ 理解不透彻,还有一个就是对于字符串方法replace的用法理解太模糊...原创 2018-07-13 18:05:16 · 838 阅读 · 0 评论 -
es6 函数参数作用域
函数的参数会形成一个单独的作用域//因为函数参数形成一个单独作用域,所以foo的参数x和匿名函数中的x是处于同一个作用域中。foo函数内部使用的x就是参数x,给x赋值为3,但是后边接着执行y(),修改x=2,所以最后输出2var x = 1;function foo(x, y = function() { x = 2; }) { x = 3; y(); console.log...原创 2018-07-26 12:00:36 · 368 阅读 · 0 评论 -
this对象的自我理解
函数中的this是存在,就看这个this被绑定到哪个对象了当一个函数用作构造函数时(使用new关键字),它的this被绑定到正在构造的新对象。/* * 构造函数这样工作: * * function MyConstructor(){ * // 函数实体写在这里 * // 根据需要在this上创建属性,然后赋值给它们,比如: * this.fum = "nom"; ...原创 2018-07-27 14:57:00 · 154 阅读 · 0 评论 -
JavaScript中的任务队列-Macrotasks、Microtasks
JavaScript中的任务队列通过阅读Promise/A+规范,可以得知异步的实现可分为两个机制,分别是macro-task和micro-task。Macrotasks包括: script(整体代码)、setTimeout, setInterval, setImmediate, I/O, UI Rendering;Microtasks包括: process.nextTick, Pro...原创 2018-08-14 10:21:13 · 506 阅读 · 0 评论 -
Array.apply(arr,arguments) 的理解
var iAmArray = function(){ return arguments;};这里不用管this,下面是正常调用它的三种方式://方便你复制到 Console 中测试,在此再写一遍var iAmArray = function(){ return arguments;};//普通写法iAmArray(1,2,3);/* [1, 2, 3]*/...转载 2018-04-15 09:55:15 · 6308 阅读 · 0 评论 -
es6 for of循环和for in循环的区别
let arr = [3, 5, 7];arr.foo = 'hello';for (let i in arr) { console.log(i); // "0", "1", "2", "foo"}for (let i of arr) { console.log(i); // "3", "5", "7"}如上例所示,for...in 循环只能获取原创 2018-03-08 09:54:33 · 650 阅读 · 0 评论 -
构造函数的方法和属性会复制给实例,但是原型中的方法和属性都不存在于实例中
function Person(){ var home = 'zfg'; this.tt = 'xjh';}Person.prototype.name = 'ysx';Person.prototype.sayname = function(){ alert(this.tt);}var person1 = new Person();person1.sayname();alert(原创 2017-10-26 19:46:48 · 480 阅读 · 0 评论 -
html 5 createPattern()函数,必须在服务器环境中才生效?
今天在本地直接写了一个html文件,测试createPattern函数,但是规定路径中的图片就是不显示,最后放在本地的Apache服务器上就可以了代码: Your browser does not support the HTML5 canvas tag.var c=document.getElementById("myCanvas");var ctx=c.getC原创 2017-03-24 15:54:38 · 801 阅读 · 1 评论 -
html5 canvas 的transform
HTML5 canvas transform与矩阵 首先,我们看一下w3school上的例子: Javascript语法:context.transform( a , b , c , d , e , f );定义与用法:画布上的每个对象都拥有一个当前的变换矩阵。而transform则是用来定义一个新的矩阵,来替换原来的变换矩阵。六个参数,对应的矩阵就是: 在这里转载 2017-03-26 13:41:20 · 758 阅读 · 0 评论 -
js 绑定时间后,浏览器会根据函数的参数传递一个事件
window.onload = function(){ function box(){ alert(arguments.length); //输出0 } box(); function box(a){ alert(arguments.length); //输出1 } box(3);原创 2017-04-28 15:09:05 · 421 阅读 · 0 评论 -
js事件流冒泡
html test 123aaaaaasdasdsadsadsadsadsadassssssssssssssssdasdasdasdasdasdddddddddddddd 444555 js代码window.onload = function(){ //以下代码会从ee开始冒泡执行 document.onclick = function(){原创 2017-04-28 15:09:44 · 236 阅读 · 0 评论 -
js 作用域问题
1.js中的作用域问题window.onload = function(){ var box = document.getElementById('aa'); box.onclick = function(){ alert(this); //返回[object HTMLDivElement],此时的this代表着box(因为是被box的事件绑定的) toBlue();原创 2017-04-28 17:26:24 · 341 阅读 · 0 评论 -
js 异步和事件的执行问题
代码: test 123aaaaaasdasdsadsadsadsadsadassssssssssssssssdasdasdasdasdasdddddddddddddd 444555 window.onload = function(){ var box = document.getElementById('aa'); addEvent(box,'原创 2017-05-01 10:17:11 · 1722 阅读 · 0 评论 -
将HTMLCollection/NodeList/伪数组转换成数组
这里把符合以下条件的对象称为伪数组(ArrayLike)1,具有length属性2,按索引方式存储数据3,不具有数组的push,pop等方法如1,function内的arguments 。2,通过document.forms,Form.elements,document.styleSheets, Select.options,document.getElementsBy转载 2017-08-25 14:18:20 · 1800 阅读 · 0 评论 -
js setInterval函数和setTimeOut函数的区别
setTimeout和setInterval的语法相同。它们都有两个参数,一个是将要执行的代码字符串,还有一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将执行那段代码。不过这两个函数还是有区别的,setInterval在执行完一次代码之后,经过了那个固定的时间间隔,它还会自动重复执行代码,而setTimeout只执行一次那段代码。区别:window.setTimeout("fun转载 2017-03-24 13:17:26 · 575 阅读 · 0 评论