随笔分类 - javascript
js相关内容
摘要:JavaScript中的变量提升(hoisting)是指在代码执行之前,变量和函数的声明会被提升到作用域的顶部。这意味着你可以在声明之前使用变量和函数,而不会引发错误。 变量提升的规则如下: 变量声明(使用var关键字)会被提升到其所在作用域的顶部,并初始化为undefined。 函数声明会被提升到
阅读全文
摘要:1.循环数组 区别一:for in 和 for of 都可以循环数组,for in 输出的是数组的index下标,而for of 输出的是数组的每一项的值。 const arr = [1,2,3,4] // for ... infor (const key in arr){ console.log(
阅读全文
摘要:浏览器会提示:(新版本的浏览器会提示)Unsafe JavaScript attempt to initiate navigation for frame with URL ‘http://www.xxx.xxx/’ from frame with URL “https://open.weixin.
阅读全文
摘要:Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。语法:Object.assign(target, ...sources) target:目标对象。sources:源对象。返回值:目标对象。 Object.assign 方法只会拷贝源对象
阅读全文
摘要:浅拷贝就是只拷贝一层,更深层次对象级别只拷贝引用(地址) 当拷贝的新对象发生改变时,原对象也会发生相同的改变,也就是说,浅拷贝会影响原来的元素 深拷贝: 深拷贝拷贝多层,每一级的数据都会拷贝 深拷贝只拷贝内容,两个对象拥有不同的地址 当拷贝出来的对象发生改变时,原对象内容不会改变,两者互不影响 JS
阅读全文
摘要:addEventListener() 方法,事件监听 你可以使用 removeEventListener() 方法来移除事件的监听。 语法element.addEventListener(event, function, useCapture);第一个参数是事件的类型 (如 "click" 或 "m
阅读全文
摘要:.map() 让我用一些简单的例子来解释它是如何工作的。 如果说你收到一组包含多个对象的数组,每个对象是一个 person。最终你只希望得到一个只包含 id 的数组。 // What you have var officers = [ { id: 20, name: 'Captain Piett'
阅读全文
摘要:Object.keys()把对象属性转为数组// 获取对象的属性let person={ name:'一只流浪的kk', age:20, eat:function(){} } console.log(Object.keys(person));// ['name','age','eat']//获取数组
阅读全文
摘要:this.data = this.list.reduce((total,per)=>{ total.push({ name:per.keyWrdDsc, value:per.num1 }} return total;},[]);this.config = ['bar','line','per'];t
阅读全文
摘要://获取详情数据 getData(e){ wx.request({ url: app.globalData.baseurl + '/xxxx', data: {id:e}, success: (res) => { console.log(res); app.checkResCode(res.data
阅读全文
摘要:1. function Person(nick, age){ this.nick = nick; this.age = age; } Person.prototype.sayName = function(){ console.log(this.nick); } var p1 = new Perso
阅读全文
摘要:var locar = '变量'; function foo(){ console.log(locar); } 上面三行代码在一个立即执行函数中。 三行代码中,有一个局部变量 local,有一个函数 foo,foo 里面可以访问到 local 变量。 好了这就是一个闭包: 「函数」和「函数内部能访问
阅读全文
摘要:1.当形参 数量不确定时,可以通过arguments对象获取传参的值。(为一个数组) function max(a) { console.log(a); var max = arguments[0]; console.log(arguments);//传入形参的值,数组形式。 for (val of
阅读全文
摘要:1.定义 每个函数都包含两个非继承而来的方法:call()方法和apply()方法。 call和apply可以用来重新定义函数的执行环境,也就是this的指向;call和apply都是为了改变某个函数运行时的context,即上下文而存在的,换句话说,就是为了改变函数体内部this的指向。 obj.
阅读全文
摘要:let arr = [10,4,5,77,23,45]; for(let j=0;j<arr.length-1;j++){//外层循环,控制趟数,每一次找到一个最大值 for(let i=0;i<arr.length-1-j;i++){// 内层循环,控制比较的次数,并且判断两个数的大小 if(ar
阅读全文
摘要:满足以下几点机即可: input type="search" 放到form标签中 使用action属性 <form action="." > <input type='search' /> </form> 注意: 如果只使用input type="search",而不放到form标签中,则显示“换行
阅读全文
摘要:<html lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8" /> <title></title> </head> <body> </body> </html> <script type="tex
阅读全文
摘要:1.new Date()传参有多种形式 avaScript下,new Date([params]),参数传递有以下五种方式: 1、new Date("month dd,yyyy hh:mm:ss"); 2、new Date("month dd,yyyy"); 3、new Date(yyyy,mth,
阅读全文
摘要:一、运算符优先级 JavaScript中的运算符优先级是一套规则。该规则在计算表达式时控制运算符执行的顺序。具有较高优先级的运算符先于较低优先级的运算符执行。例如,我们经常见到的乘法的执行就先于加法。 下表按从最高到最低的优先级列出JavaScript运算符。具有相同优先级的运算符按从左至右的顺序求
阅读全文
摘要:JS 调用属性一般有两种方法——点和中括号的方法。 标准格式是对象.属性(不带双引号),注意一点的是:js对象的属性,key标准是不用加引号的,加也可以,特别的情况必须加,如果key数字啊,表达式啊等等。 加引号是为了将其视为整体,认识一点:从对象角度,属性是不加引号的,如name,"name"这是
阅读全文