js

js 自带的 map() 方法

不想你离开。 提交于 2020-01-26 09:21:34
就是调用对象是一个Array,对Array类型增加了一个原型写法的函数,一般写一些扩展时经常用。比如判断一个元素是否在数组中之类的 Array.prototype.inArray= function (value){ for ( var i=0;i< this .length;i++){ if ( this [i] == value){ return true ; } } return false }; var arr=[ "1" , "2" , "3" ]; //以下同调用方式,在inArray函数中,使用this即可得到arr arr.inArray( "1" ); Array.prototype.inArray= function (value){ for ( var i=0;i< this .length;i++){ if ( this [i] == value){ return true ; } } return false }; var arr=[ "1" , "2" , "3" ]; //以下同调用方式,在inArray函数中,使用this即可得到arr arr.inArray( "1" ); js数组去重的三种常用方法总结 第一种是比较常规的方法 思路: 1.构建一个新的数组存放结果 2.for循环中每次从原数组中取出一个元素,用这个元素循环与结果数组对比 3

js清除浏览器缓存的几种方法

社会主义新天地 提交于 2020-01-26 09:20:24
关于浏览器缓存 浏览器缓存,有时候我们需要他,因为他可以提高网站性能和浏览器速度,提高网站性能。但是有时候我们又不得不清除缓存,因为缓存可能误事,出现一些 错误的数据。像股票类网站实时更新等,这样的网站是不要缓存的,像有的网站很少更新,有缓存还是比较好的。今天主要介绍清除缓存的几种方法。 清理网站缓存的几种方法 meta方法 //不缓存 <META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> <META HTTP-EQUIV="expires" CONTENT="0"> 清理form表单的临时缓存 <body onLoad="javascript:document.yourFormName.reset()"> 其实form表单的缓存对于我们书写还是有帮助的,一般情况不建议清理,但是有时候为了安全问题等,需要清理一下! jquery ajax清除浏览器缓存 方式一 :用ajax请求服务器最新文件,并加上请求头If-Modified-Since和Cache-Control,如下: $.ajax({ url:'www.haorooms.com', dataType:'json', data:{},

JS面向对象

╄→尐↘猪︶ㄣ 提交于 2020-01-26 08:57:31
ES6中的类和对象 类 抽象了对象的公共部分,它泛指某一大类 对象 特指某一个,通过实例化一个具体得对象 创建类 //1. 创建类 class 创建一个 明星类 var that ; class Star { //类的共有属性放到 constructor 里面 constructor ( uname ) { //constructor 里面this 指向的是 ldh that = this ; this . uname = uname ; this . btn = document . querySelector ( 'button' ) ; this . btn . onclick = this . sing ; } //类里面所有函数不需要写function //多个函数方法之间不需要添加逗号分隔 sing ( ) { //sing 里面的this 指向的是 btn console . log ( this . uname ) ; //undefined console . log ( that . uname ) ; //刘德华 } } //2. 利用类创建对象 new var ldh = new Star ( '刘德华' ) ; 类constructor构造函数 constructor() 方法是类的构造函数(默认方法),用于传递参数,返回实例对象

JS顶级对象window

梦想的初衷 提交于 2020-01-26 08:48:23
<script type="text/javascript"> var num = 100; alert(num); window.alert(window.num); function f1() { window.alert('哈哈哈'); } window.f1(); //在js中声明的变量,方法都属于window,所以window是顶级对象 </script> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <meta charset="utf-8" /> <script type="text/javascript"> window.onload = function () { //alert(window.fm.btn.value);//层级多的话使用不方便 alert(document.getElementById("btn").value);//推荐使用 } </script> </head> <body> <form action="/" method="post" id="fm"> <input type="button" name="name" value="HH" id="btn" /> </form> <

js执行顺序一步步解析

僤鯓⒐⒋嵵緔 提交于 2020-01-26 07:47:18
var set1 = setTimeout ( function ( ) { console . log ( 's1' ) var p0 = new Promise ( function ( resolve , reject ) { resolve ( 789 ) ; } ) . then ( function ( res ) { console . log ( res ) //123 } ) } ) var p1 = new Promise ( function ( resolve ) { console . log ( 'promise1' ) resolve ( 2 ) } ) ; var set2 = setTimeout ( function ( ) { console . log ( 's2' ) } ) ; p1 . then ( res => { console . log ( 'then1' ) } ) ; console . log ( 2 ) var p2 = new Promise ( function ( resolve , reject ) { resolve ( 123 ) ; } ) . then ( function ( res ) { console . log ( res ) //123 } ) var p3 = new Promise (

video标签的属性

做~自己de王妃 提交于 2020-01-26 05:30:59
video:标签的属性 src :视频的属性 poster:视频封面,没有播放时显示的图片 preload:预加载 autoplay:自动播放 loop:循环播放 controls:浏览器自带的控制条 width:视频宽度 height:视频高度 html 代码 < video id = " media " src = " http://www.sundxs.com/test.mp4 " controls width = " 400px " heigt = " 400px " > </ video > //audio和video都可以通过JS获取对象,JS通过id获取video的对象 获取video对象 Media = document . getElementById ( "media" ) ; 来源: CSDN 作者: NABOAN 链接: https://blog.csdn.net/qq_42191775/article/details/103940767

滚动条拉倒底部方法

半腔热情 提交于 2020-01-26 04:26:40
JS控制滚动条的位置: window.scrollTo(x,y); 竖向滚动条置顶 window.scrollTo(0,0); 竖向滚动条置底 window.scrollTo(0,document.body.scrollHeight) #coding=utf-8 from selenium import webdriver import time #访问百度 driver=webdriver.Firefox() driver.get( "http://www.baidu.com") #搜索 driver.find_element_by_id( "kw").send_keys( "selenium") driver.find_element_by_id( "su").click() time.sleep( 3) #将页面滚动条拖到底部 # 方法一: js= "var q=document.documentElement.scrollTop=10000" driver.execute_script(js) # 方法二: js _bottom = 'window.scrollTo(0, document.body.scrollHeight)' dr.execute_script(js_bottom) time.sleep( 3) #将滚动条移动到页面的顶部 js= "var q

JS中的call()和apply()方法

蹲街弑〆低调 提交于 2020-01-26 03:50:31
1、方法定义 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象。 说明: call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。 apply方法: 语法:apply([thisObj[,argArray]]) 定义:应用某一对象的一个方法,用另一个对象替换当前对象。 说明: 如果 argArray 不是一个有效的数组或者不是 arguments 对象,那么将导致一个 TypeError。 如果没有提供 argArray 和 thisObj 任何一个参数,那么 Global 对象将被用作 thisObj, 并且无法被传递任何参数。 2、常用实例 a、 Java代码 function add(a,b) { alert(a+b); } function sub(a,b) { alert(a-b); } add.call(sub, 3, 1); 这个例子中的意思就是用 add 来替换 sub,add.call(sub,3,1) == add(3,1) ,所以运行结果为:alert(4); // 注意:js

用JS实现 点击并自动切换轮播图

|▌冷眼眸甩不掉的悲伤 提交于 2020-01-26 03:43:40
不是很难,直接附上代码,有注释 css代码: * { margin : 0 ; padding : 0 ; } li { list-style : none ; } .wrap { width : 1200px ; margin : 0 auto ; position : relative ; } .wrap .dbox { position : absolute ; right : 50px ; bottom : 20px ; overflow : hidden ; } .dbox li { width : 20px ; height : 20px ; background : #fff ; float : left ; border-radius : 50% ; margin : 0 10px ; } .dbox .dboxli { background : hotpink ; } .dimg img { width : 1200px ; height : 400px ; display : none ; } .dimg .imgli { display : block ; } JS代码: var wrap = document . getElementsByClassName ( "wrap" ) [ 0 ] ; var box = document .

js之数组去重的方法

坚强是说给别人听的谎言 提交于 2020-01-26 03:34:47
数组去重?即去除数组中重复的元素... 首先第一种方法就是利用set集合的特性实现去重(其实set用法很多,有兴趣的可以多去了解下);   那什么是set集合呢?set集合是一种新的数据存储格式;   set语法:new Set()     参数:一个数组 set集合可以称为史上最快的一种去重方式,如下: var arr = [1, 2, 3, 4, 5, 5, 4, 3, 2, 1 ]; var set = new Set(arr); console.log(set) 第二种方法则是先封装好一个函数判断数组中是否存在某个值,然后再利用这个原理进行数组去重;代码如下: //判断数组中是否存在某个值 function has(arr, n){ var bStop = false; for(var i in arr){ if(arr[i] == n){ bStop = true; break; } } return bStop; } function norepeat2(arr){ var newArr = []; for(var i in arr){ if(!has(newArr, arr[i])){ newArr.push(srr[i]) } } return newArr; } 第三种方法呢,则是利用es5中新增的方法indexOf去重;   indexOf()作用