
js
凉风有信、
这个作者很懒,什么都没留下…
展开
-
上下文规则:
立即执行函数(上下文规则4):使用立即执行函数时,上下文就是window对象。 var a = 1; var obj = { a: 2, fun: (function(){ var a = this.a; // 立即执行函数里面的this指的是window,因此这里的a就是1 return function(){ console.log(a + this.a);原创 2021-05-22 15:45:38 · 229 阅读 · 0 评论 -
包装类:
什么是包装类:Number() 、String() 、 Boolean() 函数分别是数字,字符串,布尔值的包装类。很多编程语言都有“包装类”的设计,包装类的目的就是为了让基本类型可以从它们的构造函数的prototype上获得方法。见案例: var a = new Number(123); var b = new String('慕课网'); var c = new Boolean(true); console.log(a); // N原创 2021-05-22 15:11:13 · 77 阅读 · 0 评论 -
prototype全解全析
prototype和原型链查找:任何函数都有 prototype属性, prototype是英语“原型”的意思。prototype属性值是个对象,它默认拥有constructor属性指回函数。举个栗子: function sum(a,b){ return a+b; } console.log(sum.prototype); // {constructor: ƒ} console.log(typeof sum.prot原创 2021-05-22 12:52:46 · 1192 阅读 · 5 评论 -
用new调用函数的四步走
JS规定,使用new调用函数会进行四步走:1、函数体内会自动创建出一个空白对象。2、函数的上下文(this)会自动指向这个对象。3、函数体内的语句会执行。4、函数会自动返回上下文对象,即使函数没有return语句。下面进行解释四步走:用一下代码进行举例: function sun() { this.a = 3; this.b = 5; } var obj = new sun();原创 2021-05-21 17:11:10 · 1291 阅读 · 0 评论 -
数组去重和随机样本
数组去重:// 数组去重: var result = []; var arr = [1,2,1,2,3,1,4,9,6,4,7]; for(var i = 0; i < arr.length; i++){ if(!result.includes(arr[i])){ result.push(arr[i]); } } console.log(re原创 2021-05-17 21:12:29 · 96 阅读 · 0 评论 -
用while实现一个简单的猜数字小游戏
中午闲着没事干,就写个小游戏吧,这个小游戏游戏规则就很简单,就是系统随机产出一个整数,然后用户输一个数字,如果输入的数字大于系统的整数就弹出输大了,如果小于,就弹出输小了,规则很简单就这样。下面见代码:// 随机产一个数字1到100之间: var answer = parseInt(Math.random()*100);// 定义最大值,最小值,防止后面用户输入的数字出现逆化 var min = 1; var max = 100;// 定义循环的条件,一原创 2021-05-17 12:57:42 · 1146 阅读 · 0 评论 -
JS中正则表达式:
JS中正则表达式:注意:正则表达式都是对字符串而言! 正则在默认情况下区分大小写;什么是正则表达式: 有以下两种字符组成的文字模式:1、普通字符(例如 26个英文字母、数字等)2、特殊字符(有特殊含义的,例如 .\ 等)说明: 该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为以作为一个模板,将某个字符模式与所搜索的字符串进行匹配。正则的三种模式修饰符: 忽略大小写:i — ignoreCase 全局匹配:g — global 多行匹配:m —原创 2021-05-17 10:56:05 · 559 阅读 · 0 评论 -
深浅克隆
浅克隆:浅克隆就是只克隆对象的表层,如果对象的某些属性值又是引用类型值,则不进一步克隆它们,只是简单的传递它们的引用。见代码: var obj1 = { a: 2, b: 4, c: [12,34,18] }; var obj2 = {}; for(var k in obj1){ obj2[k] = obj1[k]; }原创 2021-05-17 10:53:20 · 102 阅读 · 0 评论