入门
jackerdf
这个作者很懒,什么都没留下…
展开
-
js入门(12)
作用域作用域的作用有var 就会变量提升;变量会提升到当前作用域的最顶端 先使用不会报错没有var 没有变量提升 先使用会报错语言分析执行前准备工作语言分析阶段:抛出错误信息语言分析阶段作用:即将要执行的一【段】js代码,是否存在六大错误,存在排除错误,代码不执行预编译预编译发生在执行之前1.初始化全局对象Global Objcet 全局对象2.全局作用域下 函数声明提升3.全局作用域下 变量声明提升4.给提升的函数赋值 functionGO预编译结束js (从浏览器编译角原创 2020-12-16 20:50:22 · 93 阅读 · 1 评论 -
js入门(11)
数组扁平化什么是数组扁平化?将嵌套多层的数组 转为一层数组 叫做数组扁平化递归实现数组扁平化处理 function didi(arr){ var res = [] for(var i=0;i<arr.length;i++){ if(Array.isArray(arr[i])){ res = res.concat(didi(arr[i])) }else{ res.push(arr[i]原创 2020-12-16 20:49:39 · 86 阅读 · 0 评论 -
js入门(10)
作用域程序运行代码是变量的区域作用域可以决定如何查找变量,也就是代码执行时 变量的使用权变量提升 发生在代码执行前变量提升只看当前作用域中var 与代码是否执行无关代码执行:与赋值等程序有关函数封装1.确定函数作用2.确定形参: 1.方法体内部需要方法体外部的内容3.根据作用确定返回值。返回值也是将函数内部内容输出到函数外部的方式函数方法体内部是私有的,函数外部是不可以访问函数内部的函数提升先提升函数再变量先提升变量 再提升函数相同名字的 后提升的后赋值拷贝分别浅拷贝和深拷贝原创 2020-12-16 20:48:57 · 76 阅读 · 0 评论 -
js入门(9)
变量1.什么情况下 报错 xxx is not defined 某变量未定义2.xx is not a function 某函数未定义变量的使用规则第一步:在哪里用的?代码是否执行了在当前作用域中找是否有var 声明了该变量:如果有,再看在当前作用域中,离他最近的一次赋值是什么,那就用什么值如果没有,就去上一层作用域中找,看是否有var 声明该变量,直到找到window下为止window 下没有 报错 xxx is not defined总结:第一步在作用域中找var,第二步往上找 最近的原创 2020-12-16 20:47:57 · 86 阅读 · 0 评论 -
js入门(8)
break与continuebreak 结束循环语句continue 跳出本次循环,下面的循环继续执行数据类型的判断1.如何判断一个数据是否为NaNisNaN(isData) 判断一个数据是否为NaN, 是返回true 否返回false参数为被判断数据2.验证是否为undefinedvar res = data ===undefined3.如何验证一个数据是否为数组Array.isArray();4.如何验证一个数据是否为对象 ?构造函数方式验证obj.constructor ===原创 2020-12-16 20:47:15 · 47 阅读 · 0 评论 -
js入门(7)
argumentsarguments 类数组 存放所有的实参类数组 具有索引值,但是不能使用数组下的api(push,pop,splice…)filter 过滤过滤filter() 作用:过滤数组中元素,返回新数组存放过滤元素参数 回调函数回参一item 数组元素回参二index 索引值var res = arr.filter(function(item,index){—> 是可以先修改元素,后筛选的item arr 数组中元素 index 索引值 console.原创 2020-12-16 20:46:22 · 116 阅读 · 0 评论 -
js入门(6)
splice()splice() 删除 | 清空 | 替换 | 插入 等,并返回删除替换的元素数组1.清空数组arr.splice(0);2.删除arr.splice(index,len) 从第几个索引值开始 删除len个元素,返回被删除的元素3.替换arr.splice(index,len,…) 将参三之后的所有参数,替换删除的元素,返回删除的元素4.插入字符串arr.splice(index,0,…) 从index索引值 删除0个元素 参三之后所有参数,返回空数组str.toLow原创 2020-12-16 20:21:17 · 84 阅读 · 0 评论 -
js入门(5)
日期格式化YYYY-MM-DD hh:mm:ss; var date = new Date(); var YYYY = date.getFullYear(); // 获取年 var MM = date.getMonth()+1; // 月 var DD = date.getDate(); // 日 var hh = date.getHours(); var mm = date.getMinutes(); var ss = date.ge原创 2020-12-16 20:20:04 · 57 阅读 · 0 评论 -
js入门(4)
多维数组的遍历循环嵌套方式,遍历多维数组for(var i = 0;i<arr.length;i++){ console.log(arr[i]); var lt = arr[i]; for(var j=0;j<lt.length;j++){ console.log(lt[j]); }}document.write(` 商品名称:${lt[j].name} 商品原创 2020-12-16 20:17:30 · 69 阅读 · 0 评论 -
js入门
js新手入门js是轻类型,解析型的脚本语言浏览器不会解析js的注释js是如何解析的,解析的过程是什么?js被web浏览器所解析 解析的过程分三部:1.语言分析,分析是否有js语法错误。2.预编译,执行之前需要做准备工作。3.解析执行,执行代码,按照从上往下逐行执行数据:变量中 通过使用【变量】使用数据,所学的所有知识点都是为变量服务变量入门什么是变量?一个变量=关键字(var)+变量名(自定义)+运算符+数据生命的方式是什么? 关键字声明变量 变量名指定变量 运算符显示数据变量有什么特点原创 2020-11-30 08:49:21 · 68 阅读 · 0 评论 -
js入门(3)
for循环,对同一段代码重复执行for(var i = 0; i < 10; i ++){}数组遍历如何获取数组长度var len = arr.length var count = 0; for(var i =0; i<len; i++){ if(arr[i] < 4){ document.write(arr[i]); } else if(arr[i] >= 5){ conso原创 2020-11-30 08:47:56 · 62 阅读 · 0 评论 -
js入门(2)
其他运算符逻辑运算符,返回值是最后运算表达式的返回值|| 一真全真,全假才假&& 一假为假,全真为真! 你真我假,你假我真运算规律:|| 从左往右运算,如果表达式返回值为false,或者结果隐士转化为flase,那么就继续运算下一个表达式,直到第一个true,返回该表达式运算结果,如果都没有,那么返回最后一个表达式运算结果&& 从左往右运算,如果表达式返回值为true,或者结果隐士转化为true,那么就继续运算下一个表达式,直到第一个false,返回该表达式运原创 2020-11-30 08:45:54 · 188 阅读 · 0 评论