js

js复习之基础总结-对象和函数的理解。

六月ゝ 毕业季﹏ 提交于 2020-03-08 12:08:20
1. 对象的理解和使用 什么是对象? 代表现实中的某个事物, 是该事物在编程中的抽象 多个数据的集合体(封装体) 用于保存多个数据的容器 属性组成: 属性名 : 字符串(标识) 属性值 : 任意类型 属性的分类: 一般 : 属性值不是function 描述对象的状态 方法 : 属性值为function的属性 描述对象的行为 特别的对象 数组: 属性名是0,1,2,3之类的索引 函数: 可以执行的 如何操作内部属性(方法) .属性名 [‘属性名’]: 属性名有特殊字符/属性名是一个变量 前面的是一些基础知识。 其实这个部分主要就是注意什么是时候使用 obj.属性名,什么时候使用obj[‘属性名’] 2. 函数的理解 如何调用执行函数 直接调用 fun() this指向调用者:一般是window new Fun() 构造函数:this指向新创建的对象 obj.fun() 对象调用方法:this指向调用者obj fun.call/apply(obj) 将this指向指定的对象。 this的情况 对上进行补充:当函数是事件响应的时候被绑定的就是被绑定的对象。 来源: CSDN 作者: SeanHit 链接: https://blog.csdn.net/l_x_cser/article/details/104728464

前端学习(40)~js学习(十七):数组的常见方法&数组的遍历

浪尽此生 提交于 2020-03-08 10:48:46
前言 数组的四个基本方法如下:(数组元素的添加和删除) 方法 描述 备注 push() 向数组的 最后面插入 一个或多个元素,返回结果为该数组新的长度 会改变原数组 pop() 删除 数组中的 最后一个 元素,返回结果为被删除的元素 会改变原数组 unshift() 在数组 最前面插入 一个或多个元素,返回结果为该数组新的长度 会改变原数组 shift() 删除 数组中的 第一个 元素,返回结果为被删除的元素 会改变原数组 数组的常见方法如下: 方法 描述 备注 slice() 从数组中提取指定的一个或多个元素 ,返回结果为新的数组 不会改变原数组 splice() 从数组中删除指定的一个或多个元素 ,返回结果为新的数组 会改变原数组 concat() 连接两个或多个数组 ,返回结果为新的数组 不会改变原数组 join() 将数组转换为字符串 ,返回结果为转换后的字符串 不会改变原数组 reverse() 反转数组 ,返回结果为反转后的数组 会改变原数组 sort() 对数组的元素,默认按照Unicode编码,从小到大进行排序 会改变原数组 遍历数组的方法如下: 方法 描述 备注 for循环 这个大家都懂 forEach() 和 for循环类似,但需要兼容IE8以上 forEach() 没有返回值。也就是说,它的返回值是 undefined map() 对原数组中的每一项进行加工

HTML5实战

我怕爱的太早我们不能终老 提交于 2020-03-08 10:40:54
HTML5实战 1.offsetLeft&offsetTop 2.元素的绝对&相对位置 3.offset-WH&client-WH 4.mac停靠栏 5.滚轮事件 6.气泡效果 7.气泡效果 8.复习 9.头部布局 10.头部交互 11.内容区布局 12.内容区交互 13.内容区交互 14.内容区交互(滚轮) 15.第三屏实现 16.第二屏实现 17.复习 18.第一屏布局 19.第一屏(js) 20.第一屏(js) 21.第一屏(js) 22.复习 23.第四屏布局 24.第四屏(js) 25.第五屏 26.第五屏(js) 27.第五屏(js) 28.同步异步 29.出入场 30.出入场 31.音频 32.开机动画 33.曲线运动 来源: CSDN 作者: Major_s 链接: https://blog.csdn.net/qq_41375318/article/details/104688470

js-原生js触发器使用

随声附和 提交于 2020-03-08 10:10:50
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>RunJS</title> <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script> <script type="text/javascript" > $(function(){ $("#open").click(function(){ // $("#upload").trigger("click"); var myEvent = new Event('click'); var e = document.createEvent("MouseEvents"); e.initEvent("click", true, true);              //这里的click可以换成你想触发的行为 document.getElementById('upload').dispatchEvent(e); }); }); </script> </head> <body> <button id="open">Hello RunJS!</button> <input type="file" id="upload"

js控制进度条数据

梦想与她 提交于 2020-03-08 10:08:17
<style><!-- #time{ width:500px; height: 20px; background: red; border-radius: 10px; } --></style> <div id="time" style="width: 100%;"> </div> <div id="total"> </div> <p> <script type="text/javascript">// <![CDATA[ //方法一、 // var total=document.getElementById('total') // var times=document.getElementById('time'); // console.log(times) // // var progress=times.offsetWidth // console.log(progress) // var pro=setInterval(function(){ // progress--; // if(progress<0){ // clearInterval(pro) // }else{ // times.style.width=progress+'px'; // total.innerHTML=times.style.width; // } // },50) 方法二、 function

前端之JS

ⅰ亾dé卋堺 提交于 2020-03-08 09:31:04
参考博客:http://www.cnblogs.com/liwenzhou/p/8004649.html JS基础语法: 0. JS引入方式    1. 直接在script标签里面写代码    2. 在单独的JS文件中写代码,然后通过 script标签的src属性引入写好的JS文件 1. 变量    1. var 变量名; var 变量名 = 值    2. 变量的命名 字母 数字 下划线和$组成    3. 推荐使用驼峰 2. 数据类型   1. 数字 Number      1. NaN     2. parseInt("111") --> 把字符串转成数字      3. parseFloat("111") --> 把字符串转成小数 2. 字符串 String    1. 字符串的常用方法 3. 布尔值 Boolean 4.数组 Array   1. 常用方法 5. null 6. undefined 3. 条件判断    1. if else    2. if; else if; else;    3. switch (值){    case 1:      console.log(...);      break;     case 2:      ...    default:     console.log(上面case都不满足就执行这一句); } 4. 循环 1.

js网页显示时间

拟墨画扇 提交于 2020-03-08 09:13:03
<html> <title>当前时间</title> <body> <!-- 定义一个id为cg --> <span id="cg">2016/12/21 上午12:00:00</span> <script> <!--这个cg就是span的id,初始化Date时间并转化为字符 string类型,每1000毫秒,setInterval() 就会调用函数,直到 被关闭。--> setInterval("cg.innerHTML=new Date ().toLocaleTimeString('chinese', {hour12:false})",1000); </script> </body></html> 来源: https://www.cnblogs.com/apolloren/p/12440936.html

js中获取时间new date()的用法

ぃ、小莉子 提交于 2020-03-08 08:44:24
获取时间: 1 var myDate = new Date(); //获取系统当前时间 获取特定格式的时间: 1 myDate.getYear(); //获取当前年份(2位) 2 myDate.getFullYear(); //获取完整的年份(4位,1970-????) 3 myDate.getMonth(); //获取当前月份(0-11,0代表1月) 4 myDate.getDate(); //获取当前日(1-31) 5 myDate.getDay(); //获取当前星期X(0-6,0代表星期天) 6 myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数) 7 myDate.getHours(); //获取当前小时数(0-23) 8 myDate.getMinutes(); //获取当前分钟数(0-59) 9 myDate.getSeconds(); //获取当前秒数(0-59) 10 myDate.getMilliseconds(); //获取当前毫秒数(0-999) 11 myDate.toLocaleDateString(); //获取当前日期 12 var mytime=myDate.toLocaleTimeString(); //获取当前时间 13 myDate.toLocaleString( ); //获取日期与时间

你不知道的JS系列 ( 23 ) - this 绑定优先级

假如想象 提交于 2020-03-08 08:43:47
我们首先来看下隐式绑定和显示绑定哪个优先级更高 function foo(){   console.log(this.a) } var obj1 = {   a: 2,   foo: foo } var obj2 = {   a: 3,   foo: foo } obj1.foo(); // 2 obj2.foo(); // 3 obj1.foo.call(obj2); // 3 obj2.foo.call(obj1); // 2 这个例子可以看到, 显示绑定优先级比隐式绑定更高。 现在我们需要搞清楚 new 绑定和隐式绑定的优先级谁高 function foo(something) {   this.a = something } var obj1 = {   foo: foo } var obj2 = { } obj1.foo(2); console.log(obj1.a); // 2 obj1.foo.call(obj2, 3); console.log(obj2.a); // 3 var bar = new obj1.foo(4); console.log(obj1.a); // 2 console.log(bar.a); //4 这个例子可以看出 new 绑定比隐式绑定优先高 ,但是 new 绑定和显示绑定谁的优先级高呢? new 和 apply/call 无法一起使用

JS 中 new 操作符

依然范特西╮ 提交于 2020-03-08 08:27:56
按照javascript语言精粹中所说,如果在一个函数前面带上new来调用该函数,那么将创建一个隐藏连接到该函数的prototype成员的新对象,同时this将被绑定到那个新对象上。这个话很抽象,我想用实例来让自己加深理解。 1.如果就一个函数,没有返回值,没有prototype成员,然后使用new,会是什么结果呢?如果一个函数没有返回值,那么如果不使用new来创建变量,那么该变量的值为undefined.如果用了new,那么就是Object.说明一个函数的默认的Prototype是Object. function Test1(str) { this.a = str;}var myTest = new Test1("test1");alert(myTest); //[object Object]function Test1WithoutNew(str) { this.a = str;}var myTestWithoutNew = Test1WithoutNew("test1");alert(myTestWithoutNew); //undefined; 2.如果函数有返回值,但是返回值是基本类型。那么new出来的myTest还是object.因为基本类型的prototype还是Object. 而如果不使用new,那么返回值就是string的值。 function Test1(str