
js基础
JavaScript
南 风 北
这个作者很懒,什么都没留下…
展开
-
前端基础面试2.0
闭包函数是:内部函数访问外部函数中变量的函数。所有的函数都是闭包,因为都可以访问到。但是,只有真正访问了外部函数的变量的时候,这个函数才可以被称为闭包函数。//闭包}}fn()原创 2022-10-24 16:50:47 · 459 阅读 · 0 评论 -
js快速排序
【代码】js快速排序。原创 2022-10-20 15:59:03 · 149 阅读 · 0 评论 -
前端基础问答1.0
前端面试原创 2022-07-16 14:18:32 · 385 阅读 · 2 评论 -
深拷贝和浅拷贝
深拷贝浅拷贝原创 2022-07-13 15:32:42 · 71 阅读 · 0 评论 -
笔记---原型,继承
原型,原型链,继承原创 2022-04-22 09:22:28 · 128 阅读 · 0 评论 -
js-注册事件
传统注册方式利用on开头的事件,比如onclick特点:注册事件的唯一性同一个元素同一个事件只能设置一个性能函数,最后注册的处理函数将会覆盖前面注册的处理函数方法监听注册方式w3c标准推荐方式addEventListner()他是一个方法兼容:ie9之前不支持,可以用attachEvent()代替特点:同一个元素同一个事件可以注册多个监听器案列: <body> <button>事件监听按钮</button> </b原创 2021-08-12 11:32:39 · 148 阅读 · 0 评论 -
检测是否为数组方法
函数中,反转数组我们传入实参console.log(函数名[1,2,3]) //正确console.log(函数名(1,2,3)) //错误检测的方法: 1.instanceof 运算符<script> var arr=[]; console.log(arr instanceof Array);</script>结果为true;...原创 2021-08-06 08:49:19 · 86 阅读 · 0 评论 -
API- Day 11- DOM
什么是DOM:文档对象模型,w3c组织推荐的处理可扩展标记语言的接口可以通过接口改变网页的内容,结构和样式····文档:一个页面就是一个文档,DOM中用document表示·······元素:页面中的所有标签都是元素,DOM用element表示···········节点:网页中所有的内容都是节点(标签,属性,文本,注释等),DOM用node表示获取元素:······通过ID获取id是大小写敏感的字符串,代表了所要查找的元素的唯一ID<body> &l原创 2021-08-06 11:07:31 · 69 阅读 · 0 评论 -
API-DOM 事件
事件:触发---响应机制事件三要素:1.事件源:事件被触发的对象2.事件类型:如何触发 什么事件,比如鼠标点击(onclick)还是鼠标经过 还是键盘按下3.事件处理程序:通过函数赋值的方式完成<body>//简单案例 <button type="button" id="btn">唐伯虎</button> <script type="text/javascript"> var btn=document.querySel原创 2021-08-09 11:00:39 · 74 阅读 · 0 评论 -
js-简单点击轮播
<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> .countiner{ position: relative; width: 1000px; height: 410px; margin: 100px auto; } .c.原创 2021-08-11 10:22:18 · 166 阅读 · 0 评论 -
js-冒泡排序2.0
<script> var arr=[1,2,3,5,8,9,6,4,7]; for( var i=0;i<arr.length-1;i++){ for(var j=0;j<arr.length-i-1;j++){ if(arr[j]>arr[j+1]){ var temp=arr[j]; arr[j]=arr[j+1]; ar.原创 2021-08-02 10:26:05 · 83 阅读 · 0 评论 -
js- Day 07 函数
声明:function 函数名称(形参){ 代码段}函数名(实参);形参和实参概念自己去搜;函数取一个数组的最大值函数的本质和语法一样,我们需要一个伪数组argumentsarguments具有length属性最后需要console.log(方法名(1,2,3,54))...原创 2021-08-05 09:16:11 · 64 阅读 · 0 评论 -
js-Day 10 Math
Math是js的内置对象,具体使用方法可以参考另外的一篇原创 2021-08-05 11:04:14 · 74 阅读 · 0 评论 -
js-Day 08
arguments全局变量和局部变量局部变量需要注意的是:如果局部变量没有var,那么将变量提升为全局变量原创 2021-08-05 09:04:43 · 75 阅读 · 0 评论 -
js-Day 06 对象
什么是对象:在js中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串,数组,数值,函数等;对象是由属性和方法组成的:属性:事务的特征,在对象中用属性来表示(常用名词)方法:事务的行为,在对象中用方法来表示(常用动词)为什么需要对象:保存一个值时,可以使用变量,保存多个值时,可以用数组,那么要保存一个人的完整信息呢?创建对象有三种方式:1 . 字面量创建对象 var obg={ ...原创 2021-08-02 17:09:35 · 71 阅读 · 0 评论 -
js-构造函数和对象
1.构造函数: 泛指的某一大类, 它类似 java语言里面的 类(class)new 构造函数可以在内存中创建一个空的对象this 就会指向刚才创建的空对象执行构造函数里面的代码 给这个空对象添加属性和方法 返回对象(所以构造函数不需要return)2.对象 特指 是一个具体的事物3.我们利用构造函数创建对象的过程我们也称为对象的实例化...原创 2021-08-05 09:16:56 · 97 阅读 · 0 评论 -
js-arguments到底是什么
直接上代码块:function showargs(){ console.log(arguments);}showargs(1,2,3,4);结果:arguments对象将传入的四个参数以数组的形式保存在里面,还有保存了我传入函数的实参的个数(length),而且我们可以看到arguments对象的proto是指向object的,这说明他是一个类数组对象而不是一个数组...原创 2021-07-31 09:50:04 · 101 阅读 · 0 评论 -
js-数组的补充
数组:arr=[1,2,3,4,5]concat()数组的合并join('.')数组的拼接reverse()数组的反转 改变原数组sort()数组的排序(从小到大) 改变原数组...原创 2021-08-02 10:01:57 · 97 阅读 · 0 评论 -
js-构造函数 原型对象 对象原型
构造函数的 原型对象 的 对象原型 继承了上一级的 构造函数 的 原型对象 的属性和方法原创 2021-08-05 10:28:49 · 90 阅读 · 0 评论 -
js-什么是预解析
1.我们js引擎运行js分为两步:预解析 代码执行(1)预解析 js引擎会把js里面所有的 var 还有 function 提升到当前作用域的最前面(2)代码执行 按照代码的书写顺序从上往下执行2.预解析分为 变量预解析(变量提升)和函数预解析(函数提升)(1)变量提升 就是把所有的变量声明提升到当前的作用域最前面 不提升赋值操作<script> console.log(num); var num=10;&...原创 2021-08-02 10:51:14 · 252 阅读 · 0 评论 -
js Day-09 构造函数
什么是构造函数:' 对象的创造工厂 ';构造函数的函数名首字母一般大写,来区分普通函数基础语法: function Nu(name,age){ this.name=name; this.age=age;}new Nu('xx',18); 调用的时候需要用new关键字来调用...原创 2021-08-05 09:03:28 · 88 阅读 · 0 评论 -
js-函数求许多数的最大值
思路:先将arguments【0】赋值给一个临时变量max,如果在循环内arguments【i】> max,则将arguments【i】赋值给max代码:<script> function showMax(arr){ var max=arguments[0]; for(var i=1;i<arguments.length;i++){ if(arguments[i]>max){原创 2021-07-31 10:06:34 · 192 阅读 · 0 评论 -
Date()日期对象
是一个构造函数,必须使用new 来调用创建我们的日期对象var arr=new Array(); 创建数组var obj =new Object();创建对象var date = new Date();创建日期1. 如果括号里面没有参数,返回系统当前时间; 2.参数的常用写法 数字型 2021.8.4 或者是 字符串'2021-8-1 8:8:8'(常用).getFullYear(); 返回当前日期的年.getMonth(); ...原创 2021-08-05 08:51:20 · 128 阅读 · 0 评论 -
js 内置对象
Math 概述Math对象不是构造函数,他具有数学常数和函数的属性和方法,跟数学相关的运算(求绝对值,取整,最大值等)可以使用Math中的成员Math.PI //圆周率Math.floor(); //向下取整Math.ceil() //向上取整Math.round() //四舍五入 就近取整 注意-3.5 结果是-3 (.5往大取)Math.abs() //绝对值Math.max() //最大值Math.min() ...原创 2021-08-05 09:03:51 · 62 阅读 · 0 评论 -
js Day-05 数组
数组1.什么是数组:一组数据的集合,可以存储多个数据;可以存储任意类型的数据,用逗号隔开数组的创建:1.new关键字 var arr=new Array();2.数组字面量创建数组(常用)var arr=【】;数组可以通过索引来访问,设置数组元素2.若想拿到数组的所有元素,则需要for循环将所有的元素遍历出来:...原创 2021-08-02 08:50:59 · 81 阅读 · 0 评论 -
js 反转数组
arr【1,2,3,4】反转数组的思路是先将原数组反向遍历,然后将i赋值给新的数组 <script type="text/javascript"> var arr=["我","是","帅哥"]; var newArr=[]; for (var i = arr.length-1; i >=0; i--) { newArr[newArr.length]=arr[i] } console.log(arr) console.log(newA..原创 2021-07-30 11:03:20 · 119 阅读 · 0 评论 -
js Day-04
循环的意义:为了重复执行某一段代码;for循环:for( ①初始化变量;②条件表达式;③操作表达式){ ④循环体;}三个条件缺一不可;如果没有操作表达式,程序会一直执行,造成浏览器的卡顿执行顺序:1243 243 243 243...(断点调试,具体细节可以看b站pink老师的详解);...原创 2021-07-30 16:00:14 · 79 阅读 · 0 评论 -
js-作用域
1.作用域:就是代码名字(变量)在某个范围内起作用和效果;目的:为了提高程序的可靠性,更重要的是减少命名冲突;2.js的作用域(es6之前):全局作用域 局部作用域3.全局作用域:整个script标签 或者是一个单独的js文件 var num=10;4.局部作用域(函数作用域):在函数内部就是作用域 这个代码的名字只在函数内部其效果和作用; function fn(){ //局部作用域......原创 2021-07-31 09:02:26 · 1407 阅读 · 0 评论 -
js 冒泡排序思路 2
js冒泡排序的方式需要两个循环来控制,外层循环控制趟数,内层循环控制交换次数 内层循环内则需要完成交换,交换则需要引入一个新的临时变量temp,故<script type="text/javascript"> var arr=[4,5,3,2,1]; for (var i = 0; i < arr.length-1; i++) { for (var j = 0; j < arr.length-i-1; j++) { if(arr[j]&g..原创 2021-07-30 11:44:55 · 83 阅读 · 0 评论 -
js冒泡排序
冒泡排序其实是一个两两比较的过程我们通过发现可得:单纯的一个循环根本不能解决冒泡排序因此我们需要内外循环来解决外层循环:趟数 来控制外层循环:假设一个数组有5个元素;分别为5-1;每个数走到最后位置的数为:arr.length-1内层循环:交换次数:来控制内层循环第一趟交换次数为:4,此时的i角标为0;第二趟交换次数为:3,此时的i角标为1;....此时的arr.length始终为5不难得出:内层循环次数为:arr.l...原创 2021-07-28 16:26:45 · 71 阅读 · 0 评论 -
js Day-03
流程控制if判断if(判断条件){ 语句1}else{语句2}如果if判断的语句为真,则执行语句1;如果if判断的语句为假,则执行语句2;if ifelseif(){}else if(){}else if(){}else{}ifelse语句依次执行,若其中一个条件为真,则执行语句,如果所有条件都为假,则执行else三元表达式基础格式:条件判断语?true:flase;s...原创 2021-07-29 16:17:00 · 85 阅读 · 0 评论 -
js-Day02
1. 声明变量注意的问题var声明的数据类型是根据“=”右边的值来确定的;且js代码是从上而下执行的,后面的变量会覆盖前面的变量2.数据类型分为两种:2.1基本数据类型:String Number Boolean undefined null2.2复杂数据类型:objectundefined 给一个变量但是不赋值; null var a=null;3.常用的转义字符:\n 换...原创 2021-07-28 10:44:14 · 57 阅读 · 0 评论 -
js函数的声明及调用
function 关键字function + 函数名(){ 函数体}function sayHi(){ console.log('hi');}此时函数仅仅被声明但是并未调用函数不声明不调用函数名一般是动词调用方法: 函数名();...原创 2021-07-28 16:46:44 · 132 阅读 · 0 评论 -
js1-100之间,跳过个位数为3的数字的和
<script> var sum=0; for(i=0;i<100;i++){ if(i%10==3){ continue; } sum+=i; console.log(sum) } </script>结果为4470原创 2021-07-28 09:07:20 · 4321 阅读 · 9 评论