![](https://img-blog.csdnimg.cn/20190927151124774.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
javascript常见问题总结
javascript常见问题总结
yingxingyf
热爱前端,每周三篇博客总结记载
展开
-
js数据类型判断的五种方法及归纳。
js数据类型判断的五种方法及归纳。原创 2022-06-26 22:33:40 · 459 阅读 · 0 评论 -
for循环中var和let的区别?
for循环中var和let的区别?原创 2022-05-22 12:01:37 · 84 阅读 · 0 评论 -
25.原型继承和原型链继承?
所谓继承: 就是子对象自动拥有父对象的属性和方法, 继承可以提 高代码的复用性。 JS里的继承主要依靠是的原型链。让原型对象(每一个构造函数都有一个原型对象porotype)的值,等于另一个类型的实例,即实现了继 承;另外一个类型的原型再指向第三个类型的实例,以此类推,也 就形成了一个原型链。作用:实现实例共享方法和属性的继承,原型继承。优点:不用将每个实例一样的属性和方法放在构造函数中,每次new都会创造内存,浪费内存,prototype减少内存的浪费<!DOCTYPE html>.原创 2021-11-29 10:35:59 · 229 阅读 · 0 评论 -
24.this?
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> </head> <body> </body></html><script type="text/javascript">// this:是个代名词//this永远都需要处在函数的内部,所以,this是谁,需要看t原创 2021-11-19 10:23:00 · 477 阅读 · 0 评论 -
23.面向过程和面向对象的对比?
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> </head> <body> </body></html><script type="text/javascript">//一、面向过程和面向对象编程思想的对比//面向过程(函数)的变成思想://首先考虑的是步骤(原创 2021-11-19 09:03:00 · 117 阅读 · 0 评论 -
22.let、const和var的区别?
let:声明变量的。跟var的功能一样let和var的区别:1、1)、let让JavaScript有了块级作用域(一对花括号就是一段代码块)。 即,let定义的变量在自己所在的花括号里起作用。2)、var只有全局作用域和函数作用域(局部)2、1)、let定义的变量不会做变量声明提升,只能在声明语句的后面使用。2)、var会声明提升。const:和let一样,只不过是只读的。...原创 2021-10-29 19:20:26 · 241 阅读 · 0 评论 -
21.cookie增删改查?(cookieTools.js)
//添加cookie//参数:// 键,// 值,// 有效期(单位:天)//返回值:无function addCookie(key,value,days){ var d = new Date(); d.setDate(d.getDate()+days); //保存cookie; document.cookie = key+"="+escape(value)+";expires="+d.toGMTString(); }//获取cookie//参数:键//返回值:键对应的值;原创 2021-10-28 14:44:16 · 168 阅读 · 1 评论 -
20.JavaScript如何做表格即时编辑,原生js的表格即时编辑怎么做?
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title><style type="text/css">td{width:120px;}</style></head><body><input id="txtId" type="text" style=".原创 2021-10-26 18:25:51 · 425 阅读 · 0 评论 -
19.javascript_九宫格拖拽,网页上的九宫格怎么做?
<html><head><meta charset="utf-8" /><title></title><style type="text/css">*{margin:0; padding:0;list-style: none}#ul1{position:relative;left:200px;top:100px;width:600px;height:450px;border:1px solid bl.原创 2021-10-26 18:23:57 · 167 阅读 · 0 评论 -
18.事件委托(重要)???利用了冒泡的思路解决问题(DOM0级只支持冒泡,DOM2级支持冒泡和捕获)
事件委托:概念:把本该属于子元素的事件绑定在父元素(父级元素)上,即把子元素的事件委托给父元素,这就是事件委托。事件委托的原理:利用冒泡的思路(当子元素的某种类型的事件被触发时,父(级)元素同类型的事件也会被触发,),同时结合event对象的target属性,能够找到真正的事件源(子元素)。事件委托的优点:1)、对于未来会添加进来的元素也会有对应事件触发。2)、不用绑定很多事件,即不用给每个子元素都绑定事件。只需要绑定在父级元素即可。节约了内存。<!doctype html>.原创 2021-10-26 10:16:02 · 78 阅读 · 0 评论 -
17.用循环的方式给dom元素批量进行事件绑定的问题(重要)???
<!doctype html><html lang="en"><head><meta charset="UTF-8"><title>作业5</title><style type="text/css">#grandpaBox{ width:300px; height:300px; background-color:pink;}#fatherBox{ width:200px; height:200px;原创 2021-10-25 11:08:35 · 269 阅读 · 0 评论 -
16.target和currenTarget的区别?
target:就是事件源currentTarget:当前事件源(当前触发到哪个事件元素,那么这个事件元素就是事件源),跟this一样。<!doctype html><html lang="en"><head><meta charset="UTF-8"><title>作业5</title><style type="text/css">#grandpaBox{ width:300px; height:30.原创 2021-10-25 10:23:18 · 659 阅读 · 0 评论 -
13.onkeydown,up和onkeypress的区别?
onkeydown,up和onkeypress的区别 ?1、从触发的键来区分onkeydown和onkeyup针对所有的键起作用onkeypress针对跟编辑有关系的键起作用(如:按字母键,退格键可以触发该事件,但是按shift,ctrl键就不会触发该事件)2、keyCode所代表的意思不同keyCode属性的意思:在keydown和keyup事件里,keyCode属性代表的意思是键盘的虚拟码(每个键唯一的编码,跟是否大小写没有关系)在keypress事件里,keyCode属性代表的意思是键.原创 2021-10-24 17:38:06 · 2607 阅读 · 0 评论 -
9.BOM对象?
BOM是browser object model的缩写,简称浏览器对象模型。通过BOM我们可以学到与浏览器窗口交互的一些对象,可以移动,调整浏览器大小的window对象,可以用于导航的location对象与history对象,可以获取浏览器,操作系统与用户屏幕信息的navigator与screen对象,可以使用document作为访问HTML文档的入口,管理框架的frames对象等。因此它的核心对 象是window。1.1.Window对象的属性Window对象: window 对象表示浏.原创 2021-10-20 13:19:25 · 76 阅读 · 0 评论 -
8.==与===?
===1、如果类型不同,就[不相等] 2、如果两个都是数值,并且是同一个值,那么[相等]。3、如果两个都是字符串,每个位置的字符都一样,那么[相等];否则[不相等] 4、如果两个值都是true,或者都是false,那么[相等]。5、如果两个值都引用同一个对象或函数,那么[相等];否则[不相等]。6、如果两个值都是null,或者都是undefined,那么[相等]。==1、如果两个值类型相同,进行=== 比较。2、如果两个值类型不同,他们可能相等。根据下面规则进行类型转换再比较 a、如果原创 2021-10-18 21:35:55 · 73 阅读 · 0 评论 -
7.字符编码?
ASCII(美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。GBK共收录了21003个汉字,英文使用单字节编码,兼容ASCII编码,中文部分采用双字节编码。Unicode为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。UTF-8是一种针对Unicode的可变长度字符编码。用在网页上可以统一页面显示中文简体繁体及其它语言。...原创 2021-10-18 19:55:03 · 72 阅读 · 0 评论 -
6.ES5新增的数组的方法?
ES5新增数组常见方法:indexOf 在数组中查找一个数所在的位置,var arr1 = [12,23,34,45,56,67];console.log(arr1.indexOf(23)); //结果是1forEach(不产生新数组改变原始数组) 对数组的每个元素做某个处理(函数的方式)var arr1 = [12,23,34,45,56,67];arr1.forEach(alert);//显示数组的每个元素foEach()函数的参数是个回调函数,forEach对应的回调函数有三个参数(数原创 2021-10-15 15:33:21 · 94 阅读 · 0 评论 -
5.引用类型和值类型作为函数参数?
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <input type="button" value=" 测试 " onclick ="testf()" /> </body></html><script type="原创 2021-10-14 20:20:44 · 168 阅读 · 0 评论 -
4.基本类型和引用类型?
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <input type="button" value=" 测试 " onclick ="testf()" /> </body></html><script type=原创 2021-10-14 19:53:45 · 52 阅读 · 0 评论 -
3.变量的声明提升?
变量的声明提升:变量声明总是会被解释器悄悄地被“提升”到方法体的最顶部请注意,变量赋值并没有被提升,只是声明被提升了。var num1=1; //全局变量,作用域是当前文件function testf1(){num1=2; //局部变量,声明被提升var num1;alert(num1); //2}function testf2(){alert(num1); //全局变量1}...原创 2021-10-12 09:39:02 · 89 阅读 · 0 评论 -
2.js变量类型转换、自动转换、手动转换、请问parseInt(),parseFloat(),Number()的区别?
2.js变量类型转换、自动转换、手动转换、请问parseInt(),parseFloat(),Number()的区别?1)隐式(自动)转换,不同的数据类型参与表达式运算过程时将会转换为同一类型进行运算字符串与数值类型运算的隐式转换规则: 1.字符串加数字,数字就会转成字符串。 2.数字减字符串,字符串转成数字。如果字符串不是纯数字就会转成NaN。字符串减数字也一样。两 个字符串相减也先转成数字。 3.乘,除,大于,小于跟减的转换也是一样。 2)显示(手动)转换 字符串转数值: parse原创 2021-09-30 18:57:11 · 110 阅读 · 0 评论 -
1.typeof查看变量类型?
1.typeof的返回值共有七种:number, boolean, string, undefined, object, function,symbol.1、numbertypeof(10);typeof(NaN);//NaN在JavaScript中代表的是特殊非数字值,它本身是一个数字类型。typeof(Infinity);2、booleantypeof(true);typeof(false);3、stringtypeof("abc");4、undefinedtypeo原创 2021-09-30 17:53:14 · 172 阅读 · 0 评论