js问题总结
shuoSmallWhite
这个作者很懒,什么都没留下…
展开
-
jq查找页面内容会把display为none的元素一并查找入内
$('#nav-menu .parent-level'); 显示与不显示的都有$('#nav-menu .parent-level:visible'); 只查找显示的内容原创 2019-11-06 15:17:31 · 767 阅读 · 0 评论 -
创建对象的三种方式
对象字面量 var obj={} 系统自带的构造函数 var obj=new object(); 自定义 构造函数 function test(){ this.name="name"; this.age=10; this.can=function(){ } } var test1=new test();构造函数能创建对象的内部原理:在函数...原创 2018-08-26 18:58:48 · 238 阅读 · 0 评论 -
javaScript的预编译问题总结
预编译过程发生在函数执行前一刻。 因为预编译过程,因而产生的变量声明提升,和 函数声明整体提升;函数内部预编译创建AO对象; 将函数的形参和变量声明作为AO对象的属性名,并且值为undefined; 将函数的实参值和形参值统一; 在函数中找函数声明,将对应函数体作为它的值; 2. 全局预编译创建GO对象; 在函数中找函数声明,将对应函数体作为它的值;实例: ...原创 2018-08-22 17:31:55 · 182 阅读 · 0 评论 -
typeof()未定义的内容,不会报错问题
typeof()一个未定义的变量不会报错;而是返回字符串的undefined;eg: typeof(shuo); "undefined"typeof(null); "object"原创 2018-08-23 10:36:17 · 2082 阅读 · 0 评论 -
JavaScript作用域链
[[scope]]:每个JavaScript函数都是一个对象,对象中有些属性我们可以访问,但是有些不可以,这些属性进供JavaScript引擎存取,[[scope]]就是其中一个。[[scope]]指的就是我们所说的作用域,其中存储了运行上下期上下文的集合;作用域链:[[scope]]中所存储的执行期上下文对象的集合,这个集合呈链式连接,我们把这种链式链接叫做作用域链。eg:fu...原创 2018-08-23 15:59:11 · 139 阅读 · 0 评论 -
javaScript的全局变量及局部变量
js的变量有两种作用域:全局变量和局部变量。没有使用 var 声明的变量和在function之外声明的变量都是全局变量,是window属性之一;使用 var 声明的变量属于所在函数,不管在函数的哪个位置出现,等价于在函数一开始声明。局部变量比同名全局变量的优先级高,所以局部变量会隐藏同名的全局变量。要想访问被隐藏的全局变量就加上 window. 前缀。js没有块作用域,在语句块之后,在函...原创 2018-08-21 13:53:12 · 196 阅读 · 0 评论 -
JS拼接字符串太长希望换行保持html格式拼接的方法
1. 通常情况tabPeoStr +='<tr class="tabPeo"><td>'+data[i].name+'</td><td>'+data[i].address+'</td><td>'+data[i].state+'</td></tr>';2. 解原创 2018-08-31 14:10:56 · 22342 阅读 · 1 评论 -
javaScript闭包问题初步总结(一)
产生场景:当内部函数被保存到外部时,将会生成闭包;缺点:闭包会导致原有作用域链不释放,造成内存泄漏。(占用空间);作用:可以实现公有变量 eg:函数累加器function add(){ var count=0; return function addS(){ count++; console.log(count); } ...原创 2018-08-24 15:45:23 · 187 阅读 · 0 评论 -
JS查找某一指定父级直到找到为止closest
document.getElementById('DateU').addEventListener('dblclick', function (event) { var e = event || window.event; var tar = e.target; var li_id = $(tar.closest('li')).attr('i...原创 2018-11-06 13:11:54 · 4835 阅读 · 0 评论 -
JS的基本类型和引用类型
数组是一种引用数据类型,数组引用变量只是一个引用,数组元素和数组变量在内存里是分开存放的实际的数组元素被存储在堆(heap)内存中;数组引用变量是一个引用类型的变量,被存储在栈(stack)内存中。js中的数据类型有以下几种:Number Boolean undefined Object Function String Null基本类型:基本的数据类型有:...转载 2019-03-04 15:34:56 · 494 阅读 · 0 评论 -
Jquery的排序方法sort()
HTML:1 <h3>字符串数组排序前</h3>2 <div id="show5"></div>3 <h3>排序后</h3>4 <div id="show6"></div>jquery:var animals = ['dog','cat','tiger','pig','bi...转载 2019-04-22 10:49:02 · 14844 阅读 · 0 评论 -
使用formData方式上传form表单里的文件
html部分 <form id="form1" enctype="multipart/form-data" method="post" name="form1"> <input name="fileinput" type="file" id="s_scIpt"/> </form> <button id="s_Sc">上传...原创 2019-04-28 17:03:18 · 1469 阅读 · 0 评论 -
解决单双击事件冲突的方法
$('#listCon').on('dblclick','p>span',function(){ clearTimeout(sRtimer); //以下为双击后需进行的操作 isIndexList=$(this).index(); $('#shuo_loading').show(); });var sRtimer=null;$('#listCon').on('c...原创 2019-04-29 16:00:19 · 714 阅读 · 0 评论 -
JS文件或图片上传问题
方式一 html部分<div id="info_img" class="fl"> <img src="" alt="" id="ry_img"> <button id="s_rySC">上传照片</button> <input type="file" id="upload_ry"><...原创 2019-04-25 11:30:18 · 588 阅读 · 0 评论 -
js中闭包问题小列举(一)
通常写法; function test(){ var arr=[]; for(var i=0;i<10;i++){ arr[i]=function(){ console.log(i); } } return arr; } var newTest=test(); for(var j=0;j<10;j++){ newTest[j](); ...原创 2018-08-26 18:48:35 · 222 阅读 · 0 评论 -
JS立即执行函数问题
(function () { }() ); W3C 建议使用 (function () { } ) (); 只有表达式才能被执行符号执行; 能被执行符号执行的表达式,这个函数的名字就会被自动忽略;函数声明; function (){} 函数声明表达式; var test=function(){} eg: // 不是表达式,不能执行,报错 function ...原创 2018-08-26 15:31:10 · 253 阅读 · 0 评论 -
创建新标签,并添加到文档中的方法
js 中创建一个 新标签 用到方法: 例如:<a id="baidu" class="link" href="http://www.baidu.com" name="baidu">这是一个链接</a>代码示例:<script>var link = document.createElement('a');link.inne转载 2018-08-08 10:31:15 · 2004 阅读 · 0 评论 -
三张图搞懂JavaScript的原型对象与原型链
对于新人来说,JavaScript的原型是一个很让人头疼的事情,一来prototype容易与__proto__混淆,二来它们之间的各种指向实在有些复杂,其实市面上已经有非常多的文章在尝试说清楚,有一张所谓很经典的图,上面画了各种线条,一会连接这个一会连接那个,说实话我自己看得就非常头晕,更谈不上完全理解了。所以我自己也想尝试一下,看看能不能把原型中的重要知识点拆分出来,用最简单的图表形式说清楚。我...转载 2018-06-27 10:56:07 · 136 阅读 · 0 评论 -
常用的js表单验证总结
1. 长度限制<p>1. 长度限制</p><form name=a onsubmit="return test()"> <textarea name="b" cols="40" rows="6" placeholder="不能超过50个字符!"></textarea>&a转载 2018-06-27 14:04:02 · 368 阅读 · 0 评论 -
关于浏览器发展的小知识总结部分
1. js首次在96年出现,现版权归oracle所有;2. 浏览器分为:shell部分(用户可操作的如,窗口,菜单部分); 内核部分(核心代码运行部分); 包括 :渲染部分 js引擎部分;3. js数据类型 原始型 number boolean string undefined null; undefined:声明了...原创 2018-07-23 14:05:01 · 199 阅读 · 0 评论 -
typeof 可以返回的值类型
number Boolean string object function undefined var a={ } var a=[ ] var a=null 返回的类型都是object 因为最初null就是为了给object占位;原创 2018-07-24 14:41:25 · 438 阅读 · 0 评论 -
JS获取任意两数之间的随机数
通过JavaScript的Math.random()方法可以获取0到1之间的任意随机数,那如何获取任意给定的两个数之间的随机数呢?如获取2和5之间的随机数,5和10之间的随机数等。由于Math.random()函数总是返回0到1之间的一个随机数,我们可以把0看成最小数,把1看成最大数。假设最小数是min,最大数是max,通过下面的公式我们便可得出任意两个数之间的随机数:Math.rand...原创 2018-07-19 14:01:59 · 4771 阅读 · 0 评论 -
原生js获取style操作
1. ele.style.color 此类方法只能获取元素行内样式;2. 若想获取其余style ,可进行如下操作:var style=window.getComputedStyle但是此方法存在兼容性问题,支持chrome, firefox, ie9+;解决兼容性方式 三元表达式:var style=window.getComputedStyle ? window.g...原创 2018-07-20 15:43:40 · 3615 阅读 · 0 评论 -
js函数的创建方式
函数声明 // 函数声明 function aaa(){ console.log('1'); } 函数表达式 // 函数表达式 // 1.命名函数表达式 var testA=function abc(){ console.log(1); } // 2.匿名函数表达式 --最常用简称函数表达式 var testB=function(){ con...原创 2018-07-26 14:42:22 · 546 阅读 · 0 评论 -
js逻辑运算符的真正原理
1.与----并且----&&第一个表达式为真,会继续执行第二个表达式,当所有表达式都为真的时候,会返回最后一个表达式的值;当遇到表达式为假的时候,会立即返回当前表达式的值,并停止向后执行表达式的行为,即当前语句结束。var a=0&&2;console.log(a);//0a=1&&3;console.log(a);//3a=...转载 2018-08-01 11:01:17 · 572 阅读 · 0 评论 -
选项卡自动切换,点击稍作停顿后继续执行自动切换功能
思路:点击事件一次,清除定时器且只清除一次。var isStart=false; var clickNum=0; $('.rig_contain').click(function(){ // var clearLoopTime=clearInterval(cardTime); clickNum++; // clearInterval(cardTime); if(!isS...原创 2018-08-07 11:13:13 · 354 阅读 · 0 评论 -
js中普通绑定事件与addEventListener绑定事件的不同之处
一、onclick 添加事件不能绑定多个事件,后面绑定的会覆盖前面的。 二、addEventListener 能添加多个事件绑定,按顺序执行。 三、addEventListener方式,不支持低版本的IE。(attachEvent 支持IE)。 四、普通方式绑定事件后,不可以取消。addEventListener绑定后则可以用 removeEven...转载 2018-07-01 08:58:26 · 1914 阅读 · 0 评论