浏览器对象模型-BOM

   BOM(浏览器对象模型),它提供了独立于内容而与浏览器窗口进行交互的对象。BOM由一系列相关的对象构成。
一、window对象
      window对象表示整个浏览器窗口,但不必表示其中包含的内容。Window还可用于移动或调整它表示的浏览器的大小。
      (1)、window对象在框架中的应用
      如果页面使用框架集合,每个框架都由它自己的window对象表示,存放在frames集合中。在frames集合中,可用数字(由0开始,从左到右,逐行的)或名字对框架进行索引。可以用top对象代替window对象(例如:top.frames[0])。top对象指向的都是最顶层的框架,即浏览器窗口自身。
      由于window对象是整个BOM的中心,所以它享有一种特权,即不需要明确引用它,在引用函数、对象或集合时,解释程序都会查看window对象,所以window.frame[0]可以只写frame[0]。
      window另一个实例是parent。parent对象与装载文件框架一起使用,要装载的文件也是框架集。window对象的name属性,它存储的是框架的名字。
      一个更加全局化的窗口指针是self,它总是等于window,如果页面上没有框架,window和seft就等于top,frames集合的长度为0。

      (2)、窗口操作
      moveBy(dx,dy)——把浏览器窗口相对当前位置水平移动dx个像素,垂直移动dy个像素。Dx值为负数,向左移动窗口,dy值为负数,向上移动窗口。
      moveTo(x,y)——移动浏览器窗口,使它的左上角位于用户屏幕的(x,y)处,可以使用负数,不过样会把部分窗口移出屏幕的可视区域。
      resizeBy(dw,dh)——相对于浏览器窗口的当前大小,把窗口的宽度调整dw个像素,高度调整dy个像素。Dw为负数,缩小窗口的宽度,dy为负数,缩小窗口的高度。
      resizeTo(w,h)——把窗口的宽度调整为w,高度调整为h,不能使用负数。
      (3)、导航和打开新窗口
      用JavaScript可以导航到指定的URL,并用window.open()方法打开新窗口。该方法接受四个参数,即要载入新窗口的页面的URL、新窗口的名字,特性字符串和说明是否用新载入的页面替换当前载入的页面的Boolean值。该窗口的特性由第三个参数(特性字符串)决定。如果省略第三个参数,将打开新的浏览器窗口,就像点击了target被设置为_blank的链接。特性字符串是用逗号分隔的设置列表,在逗号或等于前后不能有空格。它定义新创建的窗口的某些方面。window.open()方法将返回window对象作为它的函数值,该window就是新创建的窗口。

设置  说明
left Number 说明新创建的窗口的左坐标,不能为负数 
top  Number 说明新创建的窗口的上坐标,不能为负数 
height  Number 设置新创建的窗口的高度,该数字不能小于100
width Number 设置新创建的窗口的宽度,该数字不能小于100
resizable  yes,no 判断新窗口是否能通过拖动连线调整大小。默认值是no
scrollable  yes,no 判断新窗口容不下内容时是否允许滚动,默认值是no
toolbar  yes,no 判断新窗口是否显示工具栏,默认值是no 
status yes,no  判断新窗口是否显示状态栏,默认值是no
location yes,no 判断新窗口是否显示地址栏,默认是no

      var  oNewWin=window.open(“http://www.yiiyaa.net”,yiyawindow”,height=150,width=300,top=10,left=10,resizable=yes”);
       oNewWin.moveTo(100,100);
       oNewWin.resizeTo(200,200);
       oNewWin.close();   //关闭新窗口
       alert(oNewWin.opener == window);     //outpus “true”       只有在新窗口的最高层window对象才有opener属性。
       (4)、系统对话框
       alert()方法:只接受一个参数,即要显示给用户的文本,浏览器创建一个具有OK按钮的系统消息框,显示指定的文本。
       confirm()方法:只接受一个参数,即要显示的文本,浏览器创建一个具有OK按钮和Cancel按钮的系统消息框,显示指定的文本。该方法返回一个Boolean值,如果点击是OK按钮,返回true,点击的是Cancel按钮,返回false。
prompt()方法:提示用户输入某些信息,接受两个参数,即要显示给用户的文本和文本框中的默认文本。如果点击OK按钮,将文本框中的值作为函数值返回。如果点击Cancel按钮,返回null。
       以上三种对话框是模态的,意思是如果用户未点击OK按钮或Cancel按钮关闭对话框,就不能在浏览器窗口中做任何作品。
       (5)、状态栏
       window.status属性设置状态栏要显示的内容。
       window.defaultStatus属性设置状态栏默认显示内容。
       (6)、时间间隔和暂停
       setTimeout()方法:设置暂停(在指定的毫秒数后执行指定的代码),接受两个参数,要执行的代码和在执行它之前要等待的毫秒数(1/1000秒)。第一个参数可是代码串(与eval()函数的参数相同),也可是函数指针。
       clearTimeout()方法:取消还未执行的暂停,并将暂停ID传递给它。
       setInterval()方法:设置在每隔指定的时间段就执行一次指定的代码。参数与setTimeout()相同。
       clearInterval()方法:用时间间隔ID阻止要执行的代码。参数接受一个时间间隔ID。
       var iTimeoutId=setTimeout(“alert(‘Hello World!’)”,1000);
       clearTimeout(iTimeoutId);
       var   iNum=0;
       var iMax=100;
       var iIntervalId=null;
       function  incNum(){
               iNum++;
               if(iNum ==iMax){
                     clearInterval(iIntervalId);    
                }
        }
       iIntervalId=setInteval(iNum,500);
     在执行一组指定的代码前等待一段时间使用暂停。如果要反复执行某些代码,使用时间间隔。
     (7)、历史
     浏览器窗口的历史,就是用户访问过的站点的列表。访问其可以使用window对象的history属性及它的相关方法。
      go()方法:只有一个参数,即前进或后退的页面数,如果是负数,就在浏览器历史中后退,如果是正数,就前进。可以使用length属性查看历史中的页面数。
二、document对象
      document对象是window对象的属性,window对象的任何属性和方法都可直接访问。它是唯一一个既属性BOM又属性DOM。下表列出了BOM的document对象的一些通用属性:

属性 说明
alinkColor 激活的链接的颜色,如定义的 
bgColor 页面的背景颜色,如定义的
fgColor  页面的文本颜色,如定义的
lastModified 最后修改页页面的日期,是字符串
linkColor 链接的颜色,如定义的
referrer 浏览器历史中后退一个位置的URL
title 标签中显示的文本</span></td> </tr> <tr> <td><span style="font-size:18px;">URL</span></td> <td><span style="font-size:18px;">当前载入的页面的URL</span></td> </tr> <tr> <td><span style="font-size:18px;">vlinkColor</span></td> <td><span style="font-size:18px;">访问过的链接的颜色,如<body vlink=”color”>定义的</span></td> </tr> </tbody> </table> <p><span style="font-size:18px;">      document对象也有许多集合,提供对载入的页面的各个部分的访问:</span></p> <table border="1" style="width:500px;"> <tbody> <tr> <td><span style="font-size:18px;">集合</span></td> <td><span style="font-size:18px;">说明</span></td> </tr> <tr> <td><span style="font-size:18px;">anchors</span></td> <td><span style="font-size:18px;">页面中的所有锚的集合<span> </span></span></td> </tr> <tr> <td><span style="font-size:18px;">applets</span></td> <td><span style="font-size:18px;">页面中所有applet的集合</span></td> </tr> <tr> <td><span style="font-size:18px;">embeds</span></td> <td><span style="font-size:18px;">页面中所有嵌入式对象的集合<span> </span></span></td> </tr> <tr> <td><span style="font-size:18px;">forms<span> </span></span></td> <td><span style="font-size:18px;">页面中所有表单的集合</span></td> </tr> <tr> <td><span style="font-size:18px;">images<span> </span></span></td> <td><span style="font-size:18px;">页面中所有图像的集合</span></td> </tr> <tr> <td><span style="font-size:18px;">links<span> </span></span></td> <td><span style="font-size:18px;">页面中所有链接的集合</span></td> </tr> </tbody> </table> <p><span style="font-size:18px;">      可以用数字或名字引用document对象的每个集合。如:document.images[0]<br>        write()方法:在页面输出字符串,只接受一个参数,即要写入有文档的字符串。注意:把<script/>标签写入页面时一定要把”<script/>”字符串分开。writeln()方法:和write()方法功能一样,不同的是将在字符串末尾加一个换行符(\n)。可以使用这种功能动态地引入外部JavaScript文件。<br>       要插入内容属性,必须在完全载入页面前调用write()和writeln()方法。如果任何一个方法是在页面载入后调用的,它将抹去页面的内容,显示指定的内容。在调用write()前,先调用open()方法,写完后,调用close()方法完成显示。<br> 三、location对象<br>       location对象是BOM中最有用的对象之一,它是window对象和document对象的属性。<br>       location对象表示载入窗口的URL,还可以解析URL。<br>       下表列出了BOM的location对象的一些通用属性:</span></p> <table border="1" style="width:500px;"> <tbody> <tr> <td><span style="font-size:18px;">属性</span></td> <td><span style="font-size:18px;">说明</span></td> </tr> <tr> <td><span style="font-size:18px;">hash<span> </span></span></td> <td><span style="font-size:18px;">如果URL包含#,该方法将返回该符号之后的内容<span> </span></span></td> </tr> <tr> <td><span style="font-size:18px;">host</span></td> <td><span style="font-size:18px;">服务器的名字(如</span><span style="font-size:18px;color:#2089cc;">www.yiiyaa.net</span><span style="font-size:18px;">)<span> </span></span></td> </tr> <tr> <td><span style="font-size:18px;">hostname<span> </span></span></td> <td><span style="font-size:18px;">通常等于host,有时会省略前面的www</span></td> </tr> <tr> <td><span style="font-size:18px;">href<span> </span></span></td> <td><span style="font-size:18px;">当前载入的页面的完整URL<span> </span></span></td> </tr> <tr> <td><span style="font-size:18px;">pathname<span> </span></span></td> <td><span style="font-size:18px;">URL中的主机名后面的部分</span></td> </tr> <tr> <td><span style="font-size:18px;">port<span> </span></span></td> <td><span style="font-size:18px;">URL中声明的请求的端口</span></td> </tr> <tr> <td><span style="font-size:18px;">protocol<span> </span></span></td> <td><span style="font-size:18px;">URL中使用的协议,即双斜杠之前的部分</span></td> </tr> <tr> <td><span style="font-size:18px;">search<span> </span></span></td> <td><span style="font-size:18px;">执行GET请求的URL中的问号后面的部分(查询字符串)<span> </span></span></td> </tr> </tbody> </table> <p><span style="font-size:18px;">       location.assign(“http://www.yiiyaa.net”);     //设置窗口的URL,同location.href属性一样<br>        location.replace(“http://www.yiiyaa.net”);    //同assign()方法一样,只不过从浏览器历史中删除包含脚本的页面,这样就不能通过浏览器的后退和前进按钮访问它。<br>       reload()方法:重新载入当前页面,只有一个参数,如果是false,则从缓存中载入,如果是true,则从服务器载。最后放在最后一行,因为有可能被执行,有可能不被执行,这由网络延迟和系统资源决定。<br>       toString()方法:返回location.href的值。<br> 四、navigator对象<br>       navigator也是window对象的属性,可以用window.navigator引用它,也可以用navigator引用。<br> 五、screen对象<br>        screen对象可以获取某些关于屏幕的信息。<br>        availHeight——窗口可以使用的屏幕的高度(以像素计),基路包括操作系统需要的空间<br>        availWidth——窗口可以使用的屏幕的宽度(以像素计)。<br>        colorDepth——用户表示颜色的位数,大多系统采用32位。<br>        height——屏幕的高度,以像素计。<br>        width——屏幕的高度,以像素计。</span></p> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1297494779747180544"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(javascript)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1899442702450225152.htm" title="HTML5 Canvas制作雪花飘落动画" target="_blank">HTML5 Canvas制作雪花飘落动画</a> <span class="text-muted">坚持坚持那些年</span> <div>本文还有配套的精品资源,点击获取简介:HTML5引入了Canvas元素,它赋予网页设计师丰富的绘图能力,允许通过JavaScript实现复杂的动画效果。本文将介绍如何结合HTML5的Canvas元素和JavaScript创建一个全屏的雪花飘落背景动画。通过定义雪花对象、创建雪花数组、编写主循环并利用requestAnimationFrame来绘制和更新雪花位置,我们能够实现一个逼真的雪花飘落动画效</div> </li> <li><a href="/article/1899437526028972032.htm" title="探索创新:CanvasParticles - 点燃你的网页动态效果" target="_blank">探索创新:CanvasParticles - 点燃你的网页动态效果</a> <span class="text-muted">柏赢安Simona</span> <div>探索创新:CanvasParticles-点燃你的网页动态效果去发现同类优质开源项目:https://gitcode.com/是一个开源的JavaScript库,专注于在HTML5Canvas上创建引人入胜的粒子动画效果。如果你是Web开发者,正在寻找一种方法为你的网站增添独特的视觉吸引力,那么这个项目绝对值得你深入了解。项目简介CanvasParticles提供了一套简洁而强大的API,让你能够</div> </li> <li><a href="/article/1899437021672304640.htm" title="探索CoreHTML5Canvas:创作动态Web图形的新工具" target="_blank">探索CoreHTML5Canvas:创作动态Web图形的新工具</a> <span class="text-muted">郁英忆</span> <div>探索CoreHTML5Canvas:创作动态Web图形的新工具去发现同类优质开源项目:https://gitcode.com/是一个强大的JavaScript库,专为开发者设计,旨在简化和增强在Web上创建交互式和动画图形的能力。这个项目利用HTML5Canvas元素,提供了一个简洁且高效的API,让开发人员可以轻松地构建出丰富的2D渲染效果。技术分析HTML5Canvas是HTML5的一个重要特</div> </li> <li><a href="/article/1899430966909267968.htm" title="Webpack 打包详细教程" target="_blank">Webpack 打包详细教程</a> <span class="text-muted">oliver.chau</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91/1.htm">前端开发</a><a class="tag" taget="_blank" href="/search/webpack/1.htm">webpack</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a> <div>Webpack是一个现代JavaScript应用的静态模块打包工具,它可以处理JavaScript、CSS、图片等资源,并优化它们以提高性能。以下是Webpack从基础到进阶的详细教程。1.Webpack基础概念Webpack的核心概念包括:Entry(入口):Webpack开始打包的起点。Output(输出):打包后的文件存放路径。Loaders(加载器):转换非JavaScript资源(如CS</div> </li> <li><a href="/article/1899415080697655296.htm" title="JS: 类型转换 + 运算符 + 循环" target="_blank">JS: 类型转换 + 运算符 + 循环</a> <span class="text-muted">..儒</span> <a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/ecmascript/1.htm">ecmascript</a> <div>类型转换一,为什么需要类型转换JavaScript是弱数据类型:JavaScript也不知道变量到底属于那种数据类型,只有赋值了才清楚。坑:使用表单、prompt获取过来的数据默认是字符串类型的,此时就不能直接简单的进行加法运算。console.log('1000e'+‘2000')//输出结果100002000此时需要转换变量的数据类型。通俗来说,就是把一种数据类型的变量转换成我们需要的数据类型</div> </li> <li><a href="/article/1899414197138157568.htm" title="Uniapp组件 Textarea 字数统计和限制" target="_blank">Uniapp组件 Textarea 字数统计和限制</a> <span class="text-muted">weixin_42220130</span> <a class="tag" taget="_blank" href="/search/uniapp/1.htm">uniapp</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">微信小程序</a><a class="tag" taget="_blank" href="/search/uni-app/1.htm">uni-app</a><a class="tag" taget="_blank" href="/search/textarea/1.htm">textarea</a><a class="tag" taget="_blank" href="/search/%E8%BE%93%E5%85%A5%E6%A1%86/1.htm">输入框</a><a class="tag" taget="_blank" href="/search/%E7%BB%9F%E8%AE%A1/1.htm">统计</a><a class="tag" taget="_blank" href="/search/%E9%99%90%E5%88%B6/1.htm">限制</a> <div>UniappTextarea字数统计和限制在Uniapp中,可以通过监听textarea的input事件来实现字数统计功能。以下是一个简单的示例,展示如何在textarea的右下角显示输入的字符数。示例代码首先,在模板中定义一个textarea元素,并绑定input事件处理函数:{{fontNum}}/200然后,在JavaScript部分定义updateFontNum方法来更新字符数:expor</div> </li> <li><a href="/article/1899411170629054464.htm" title="如何有效管理 JavaScript 中的内存:垃圾回收与最佳实践" target="_blank">如何有效管理 JavaScript 中的内存:垃圾回收与最佳实践</a> <span class="text-muted">名之以父</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8/1.htm">安全</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E6%A1%86%E6%9E%B6/1.htm">前端框架</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a> <div>“垃圾回收是现代编程语言的核心特性之一,它使得开发者可以专注于功能实现,而无需担心内存管理的细节。”——在JavaScript中,垃圾回收(GC)是一个自动化的内存管理过程,它帮助我们确保不再使用的内存得到释放。尽管JavaScript的垃圾回收机制非常强大,但如果对其原理和工作方式不够了解,也可能导致一些性能问题和内存泄漏。本文将深入探讨JavaScript中的垃圾回收机制、算法以及如何优化垃圾</div> </li> <li><a href="/article/1899411172239667200.htm" title="【JavaScript 】垃圾回收机制进阶解析:提高性能的终极指南" target="_blank">【JavaScript 】垃圾回收机制进阶解析:提高性能的终极指南</a> <span class="text-muted">名之以父</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8/1.htm">安全</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a> <div>“垃圾回收机制不仅是内存管理的基石,更是高效Web开发的保障。在JavaScript中,理解其工作原理至关重要。”在JavaScript中,垃圾回收(GarbageCollection,GC)是一个自动化的内存管理过程,能够有效防止内存泄漏虽然这看似是一个简单的机制,但背后却包含着丰富的理论与实现细节。理解这些原理,不仅能够帮助我们写出更高效的代码,还能避免一些性能问题和内存泄漏。本文将带你深入探</div> </li> <li><a href="/article/1899405119406010368.htm" title="JavaScript面试宝典" target="_blank">JavaScript面试宝典</a> <span class="text-muted">傻小胖</span> <a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>1.JS由哪三部分组成?JavaScript由以下三部分组成:ECMAScript(ES):JavaScript的核心语法,如变量、作用域、数据类型、函数、对象等。DOM(文档对象模型):用于操作HTML和XML文档的API,可以动态修改网页内容、结构和样式。BOM(浏览器对象模型):用于操作浏览器窗口和页面,例如window、navigator、location、history、screen等对</div> </li> <li><a href="/article/1899397170772111360.htm" title="JavaScript模块化开发的演进历程" target="_blank">JavaScript模块化开发的演进历程</a> <span class="text-muted">IronKee</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>写在前面的话js模块化历程记录了js模块化思想的诞生与变迁历史不是过去,历史正在上演,一切终究都会成为历史拥抱变化,面向未来延伸阅读-JavaScript诞生(这也解释了JS为何一开始没有模块化)JavaScript因为互联网而生,紧随着浏览器的出现而问世1990年底,欧洲核能研究组织(CERN)科学家Tim,发明了万维网(WorldWideWeb),最早的网页只能在操作系统的终端里浏览,非常不方</div> </li> <li><a href="/article/1899384937878974464.htm" title="Dash 简介" target="_blank">Dash 简介</a> <span class="text-muted">tankusa</span> <a class="tag" taget="_blank" href="/search/dash/1.htm">dash</a> <div>Dash是一个基于Python的开源框架,专门用于构建数据分析和数据可视化的Web应用程序。Dash由Plotly团队开发,旨在帮助数据分析师、数据科学家和开发人员快速创建交互式的、基于数据的Web应用,而无需深入掌握前端技术(如HTML、CSS和JavaScript)。Dash的核心优势在于其简单易用性和强大的功能。通过Dash,用户可以使用纯Python代码来构建复杂的Web应用,而无需编写繁</div> </li> <li><a href="/article/1899366676525281280.htm" title="Yarn:包管理优化与工作空间的最佳实践" target="_blank">Yarn:包管理优化与工作空间的最佳实践</a> <span class="text-muted"></span> <div>在现代前端开发中,包管理工具是不可或缺的工具之一。Yarn作为一个快速、可靠且安全的包管理工具,相对于npm,提供了一些独特的功能和优化,尤其是在工作空间管理和性能优化方面尤为突出。本文将深入探讨Yarn的专业使用,包括其工作空间的强大功能、性能优化技术以及在大型项目中的最佳实践。Yarn简介Yarn是由Facebook开发的一个JavaScript包管理工具,它旨在解决npm的一些关键问题,如安</div> </li> <li><a href="/article/1899360845343813632.htm" title="ES6 解构赋值详解" target="_blank">ES6 解构赋值详解</a> <span class="text-muted">修己xj</span> <a class="tag" taget="_blank" href="/search/web/1.htm">web</a><a class="tag" taget="_blank" href="/search/es6/1.htm">es6</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/es6/1.htm">es6</a> <div>ES6是JavaScript语言的一次重大更新,引入了许多新特性和语法改进,其中解构赋值是一个非常实用和灵活的语法特性。它可以让我们从数组或对象中提取值,并赋给对应的变量,让代码变得更加简洁和易读。本文将深入探讨ES6解构赋值的语法、用法及其在实际开发中的应用。数组解构赋值数组解构赋值允许我们通过类似模式匹配的方式,从数组中提取值并赋给变量,即只要等会两边的变量模式相同,左边的变量就会被赋予对应的</div> </li> <li><a href="/article/1899356684506165248.htm" title="ES6之解构" target="_blank">ES6之解构</a> <span class="text-muted">Hopebearer_</span> <a class="tag" taget="_blank" href="/search/ES6/1.htm">ES6</a><a class="tag" taget="_blank" href="/search/es6/1.htm">es6</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/ecmascript/1.htm">ecmascript</a> <div>文章目录ES6之解构一、数组解构1.基本解构2.部分解构3.默认值4.剩余参数5.嵌套解构6.交换变量二、对象解构1.基本解构2.重命名3.默认值4.剩余参数三、函数参数结构1.数组参数解构2.对象参数解构3.默认值四、注意事项1.解构顺序2.undefined情况3.剩余元素4.对象的方法解构ES6之解构解构是JavaScript(ES6及以后版本)中一种非常强大的语法特性,它允许我们按照一定模</div> </li> <li><a href="/article/1899346470969077760.htm" title="ES6解构赋值详解" target="_blank">ES6解构赋值详解</a> <span class="text-muted">漫天转悠</span> <a class="tag" taget="_blank" href="/search/ES6/1.htm">ES6</a><a class="tag" taget="_blank" href="/search/es6/1.htm">es6</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/ecmascript/1.htm">ecmascript</a> <div>ES6解构赋值详解ES6解构赋值是JavaScript语言的一项强大特性,它允许从数组或对象中提取数据,并将其赋值给变量。这一特性不仅简化了代码,提高了可读性,还增强了代码的灵活性。本文将详细介绍ES6解构赋值的基本概念、语法、应用场景以及一些高级用法。1.基本概念解构赋值是对赋值运算符的扩展。它允许按照一定的模式,从数组或对象中提取值,并赋值给变量。这种语法使得从复杂数据结构中提取数据变得更加简</div> </li> <li><a href="/article/1899343573246078976.htm" title="web前端期末大作业:婚纱网页主题网站设计——唯一旅拍婚纱公司网站HTML+CSS+JavaScript" target="_blank">web前端期末大作业:婚纱网页主题网站设计——唯一旅拍婚纱公司网站HTML+CSS+JavaScript</a> <span class="text-muted">IT-司马青衫</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/%E8%AF%BE%E7%A8%8B%E8%AE%BE%E8%AE%A1/1.htm">课程设计</a><a class="tag" taget="_blank" href="/search/html/1.htm">html</a> <div>‍静态网站的编写主要是用HTMLDⅣV+CSSJS等来完成页面的排版设计‍,一般的网页作业需要融入以下知识点:div布局、浮动定位、高级css、表格、表单及验证、js轮播图、音频视频Fash的应用、uli、下拉导航栏、鼠标划过效果等知识点,学生网页作业源码,制作水平和原创度都适合学习或交作业用,记得点赞。精彩专栏推荐【作者主页——获取更多优质源码】【web前端期末大作业——毕设项目精品实战案例(1</div> </li> <li><a href="/article/1899338906554396672.htm" title="Vue初体验" target="_blank">Vue初体验</a> <span class="text-muted">码上跑步</span> <a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>Vue基础Vue是什么?Vue是javascript的渐进式框架。Vue初识Vue工作时必须要创建一个Vue的实例,并且传入一个配置对象。root容器里的代码是符合html的语法但是新添加了一些Vue语法,在这些地方Vue会自动进行解析。root容器里的代码称为Vue模版。Vue实例和容器是一一对应的。在实际开发中只有一个Vue,配合组件使用。在vue里的插值{{}}内部只要写js表达式就能正常解</div> </li> <li><a href="/article/1899313310344474624.htm" title="JavaScript -闭包" target="_blank">JavaScript -闭包</a> <span class="text-muted">嗷呜~嗷呜~呜呜~</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>闭包定义:函数声明时会保存其所在的作用域(词法环境),必然有一个全局作用域,除了全局作用域剩余的对于当前函数来说叫--闭包闭包特征:函数在声明时会保存其所在的所有作用域(词法环境)闭包本质:作用域中所使用到的值组成的对象闭包的作用:把使用到的来自于其他作用域的值保存起来,保障函数在执行时能顺利运行window里面的ashow对象拥有一个scopes属性,其中存放了函数使用到的其他作用域中的值:这些</div> </li> <li><a href="/article/1899301829213220864.htm" title="Vue3 基础教程:从入门到实践 (保姆级教学)" target="_blank">Vue3 基础教程:从入门到实践 (保姆级教学)</a> <span class="text-muted">前段技术人</span> <a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/vue/1.htm">vue</a> <div>一、Vue3简介Vue.js是一款用于构建用户界面的JavaScript框架,而Vue3作为其最新的主要版本,带来了诸多令人瞩目的改进与新特性,使其在前端开发领域备受青睐。(一)Vue3的优势性能提升:Vue3重写了虚拟DOM算法,显著提高了挂载、更新和渲染的速度。在处理大型列表或频繁数据更新的场景时,Vue3的表现更为出色,能够为用户带来更流畅的交互体验。例如,一个包含大量商品信息的电商产品列表</div> </li> <li><a href="/article/1899300061964201984.htm" title="VSCode 插件开发实战(十六):详解插件生命周期" target="_blank">VSCode 插件开发实战(十六):详解插件生命周期</a> <span class="text-muted">乐闻x</span> <a class="tag" taget="_blank" href="/search/VsCode/1.htm">VsCode</a><a class="tag" taget="_blank" href="/search/%E4%BD%BF%E7%94%A8%E6%89%8B%E5%86%8C/1.htm">使用手册</a><a class="tag" taget="_blank" href="/search/vscode/1.htm">vscode</a><a class="tag" taget="_blank" href="/search/ide/1.htm">ide</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E8%BE%91%E5%99%A8/1.htm">编辑器</a> <div>前言VSCode它不仅功能强大,而且可以通过插件进行扩展,以满足不同开发者的需求。那么,VSCode自定义插件的生命周期是如何运行的呢?今天我们就用通俗易懂的方式来讲解一下。什么是VSCode插件?VSCode插件是用来扩展编辑器功能的小程序。通过这些插件,我们可以添加新的语言支持、代码片段、调试支持等。VSCode插件通常是用JavaScript或TypeScript编写的,并打包成VSIX文件</div> </li> <li><a href="/article/1899299809274163200.htm" title="web前端高级JavaScript - 闭包的应用及循环事件绑定的N中解决办法" target="_blank">web前端高级JavaScript - 闭包的应用及循环事件绑定的N中解决办法</a> <span class="text-muted">一笑程序猴</span> <a class="tag" taget="_blank" href="/search/WEB%E5%89%8D%E7%AB%AF%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/1.htm">WEB前端高级教程</a><a class="tag" taget="_blank" href="/search/%E9%97%AD%E5%8C%85%E5%BA%94%E7%94%A8/1.htm">闭包应用</a><a class="tag" taget="_blank" href="/search/%E5%BE%AA%E7%8E%AF%E4%BA%8B%E4%BB%B6%E7%BB%91%E5%AE%9A/1.htm">循环事件绑定</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%AE%9A%E4%B9%89%E7%B4%A2%E5%BC%95/1.htm">自定义索引</a> <div>闭包在循环事件绑定中的应用场景描述:在页面上有3个button按钮,当点击每个按钮时输出当前按钮的索引值,要求用循环来绑定每个按钮的事件,看下面的代码。button1button2button3varbuttons=document.querySelectorAll('button');for(vari=0;i<buttons.length;i++){buttons[i].onclick=func</div> </li> <li><a href="/article/1899299059043201024.htm" title="刷题前必学!二叉树!用JavaScript学数据结构与算法" target="_blank">刷题前必学!二叉树!用JavaScript学数据结构与算法</a> <span class="text-muted"></span> <div>‍JavaScript算法与数据结构-HowieCong务必要熟悉JavaScript使用再来学!一、树是什么?数据结构中的树,对于现实世界中的树简化——树根抽象为“根节点”,树枝抽象为“边”,树枝的两个端点抽象为“结点”,树叶抽象为“叶子结点”计算机中的树如下:二、树的重点树的层次计算规则:根结点所在的那一层为第一层,其子节点为第二层,以此类推结点和树的高度计算规则:叶子结点高度为1,每向上一层</div> </li> <li><a href="/article/1899290731877560320.htm" title="JavaScript-闭包" target="_blank">JavaScript-闭包</a> <span class="text-muted">tuoluoo</span> <a class="tag" taget="_blank" href="/search/JavaScript%E5%AD%A6%E4%B9%A0/1.htm">JavaScript学习</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>闭包概念在JS中,变量的作用域属于函数作用域,在函数执行后作用域就会被清理、内存也随之回收,但是由于闭包是建立在一个函数内部的子函数,由于其可访问上级作用域的原因,即使上级函数执行完,作用域也不会随之销毁,这时的子函数——也就是闭包形成:函数中嵌套函数作用:函数内部调用外部变量、构造函数的私有属性、延长变量生命周期优点:希望一个变量长期存在内存中、模块化代码避免全局变量的污染、私有属性缺点:无法回</div> </li> <li><a href="/article/1899272198774910976.htm" title="自助洗车小程序开发方案详解" target="_blank">自助洗车小程序开发方案详解</a> <span class="text-muted">ALLSectorSorft</span> <a class="tag" taget="_blank" href="/search/%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">小程序</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">微信小程序</a> <div>自助洗车小程序开发设计详细扩写一、系统架构设计(一)技术栈选型1.前端:微信小程序(原生开发):直接基于微信官方提供的开发框架,能充分利用微信的原生能力,如小程序的启动速度快、与微信生态的无缝衔接等。开发过程中可使用微信开发者工具进行代码编写、调试和预览,通过WXML(类似HTML)、WXSS(类似CSS)和JavaScript构建用户界面和交互逻辑。例如利用微信原生的组件库,快速搭建出美观且符合</div> </li> <li><a href="/article/1899248247185141760.htm" title="正则表达式" target="_blank">正则表达式</a> <span class="text-muted">yuren_xia</span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E6%8A%80%E6%9C%AF/1.htm">前端技术</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF%E6%8A%80%E6%9C%AF/1.htm">后端技术</a><a class="tag" taget="_blank" href="/search/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F/1.htm">正则表达式</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>正则表达式(RegularExpression)是一种用于描述字符模式的规则,主流语言对其都有良好的支持。文章目录一、元字符二、常见校验1、校验数字的表达式2、校验字符的表达式3、特殊需求表达式三、JavaScript中使用正则表达式四、在java中使用正则表达式一、元字符正则表达式中有许多元字符,它们具有特殊的含义:1、字符类相关点号(.)匹配除换行符之外的任意单个字符。例如,在表达式a.b中,</div> </li> <li><a href="/article/1899244464128454656.htm" title="React Native" target="_blank">React Native</a> <span class="text-muted">svygh123</span> <a class="tag" taget="_blank" href="/search/%E9%97%AE%E9%A2%98%E8%A7%A3%E5%86%B3%E8%BF%87%E7%A8%8B/1.htm">问题解决过程</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/js/1.htm">js</a><a class="tag" taget="_blank" href="/search/react/1.htm">react</a><a class="tag" taget="_blank" href="/search/native/1.htm">native</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>ReactNative是一个用于构建原生移动应用的框架,它使用JavaScript和React(一个用于构建用户界面的JavaScript库)来开发iOS和Android平台的应用程序。ReactNative由Facebook开发并维护,并且是开源的。特点跨平台开发:ReactNative允许开发者使用相同的代码库为多个平台(如iOS和Android)编写应用,极大地提高了开发效率。热重载:开发者</div> </li> <li><a href="/article/1899234753589080064.htm" title="VScode使用小技巧" target="_blank">VScode使用小技巧</a> <span class="text-muted">前端CV攻城狮</span> <a class="tag" taget="_blank" href="/search/vscode/1.htm">vscode</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>代码片段快捷键设置设置位置:文件—首选项—用户代码片段----搜javaScript,进入JavaScript.json,自定义快捷键(setting→ConfigureUserSnippets→JavaScripts.json)例:log快速输入console.log()"Printtoconsole":{"prefix":"log","body":["console.log('$1')"],"</div> </li> <li><a href="/article/1899223152446205952.htm" title="数据监控工具Mixpanel的简易使用教程" target="_blank">数据监控工具Mixpanel的简易使用教程</a> <span class="text-muted">alankuo</span> <a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a> <div>Mixpanel的使用教程如下:注册与准备创建账号:访问Mixpanel官方网站,按照提示填写相关信息创建账号。登录后,在项目设置中可以获取项目密钥。了解基本概念:明确事件、用户属性等基本概念。事件是用户在应用中的操作,如点击按钮、完成注册等;用户属性是描述用户特征的信息,像年龄、城市、会员等级等。集成SDKWeb应用:在HTML文件中引入MixpanelJavaScriptSDK。在页面的标签内</div> </li> <li><a href="/article/1899211793948012544.htm" title="最新网络安全-跨站脚本攻击(XSS)的原理、攻击及防御_xsstrike原理" target="_blank">最新网络安全-跨站脚本攻击(XSS)的原理、攻击及防御_xsstrike原理</a> <span class="text-muted">2401_84239830</span> <a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/web%E5%AE%89%E5%85%A8/1.htm">web安全</a><a class="tag" taget="_blank" href="/search/xss/1.htm">xss</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8/1.htm">安全</a> <div>XSS的类型反射型XSS/不持久型XSS存储型XSS/持久型XSS基于DOM的XSS常用Payload与工具XSS扫描工具Payloadsscript标签类结合js的html标签伪协议绕过危害防御简介跨站脚本攻击(全称CrossSiteScripting,为和CSS(层叠样式表)区分,简称为XSS)是指恶意攻击者在Web页面中插入恶意javascript代码(也可能包含html代码),当用户浏览网</div> </li> <li><a href="/article/1899191610839724032.htm" title="智慧树刷课插件常见问题解决方案" target="_blank">智慧树刷课插件常见问题解决方案</a> <span class="text-muted">姬虹俪Humble</span> <div>智慧树刷课插件常见问题解决方案zhihuishu智慧树刷课插件,自动播放下一集、1.5倍速度、无声项目地址:https://gitcode.com/gh_mirrors/zh/zhihuishu1.项目基础介绍本项目是一个开源的智慧树刷课插件,旨在帮助用户自动化观看智慧树教学视频。该插件能够自动播放下一集视频、提供1.5倍速播放以及无声播放的功能。主要使用的编程语言为JavaScript和HTML</div> </li> <li><a href="/article/5.htm" title="[星球大战]阿纳金的背叛" target="_blank">[星球大战]阿纳金的背叛</a> <span class="text-muted">comsci</span> <div>       本来杰迪圣殿的长老是不同意让阿纳金接受训练的.........     但是由于政治原因,长老会妥协了...这给邪恶的力量带来了机会     所以......现代的地球联邦接受了这个教训...绝对不让某些年轻人进入学院    </div> </li> <li><a href="/article/132.htm" title="看懂它,你就可以任性的玩耍了!" target="_blank">看懂它,你就可以任性的玩耍了!</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a> <div>          javascript作为前端开发的标配技能,如果不掌握好它的三大特点:1.原型 2.作用域 3. 闭包 ,又怎么可以说你学好了这门语言呢?如果标配的技能都没有撑握好,怎么可以任性的玩耍呢?怎么验证自己学好了以上三个基本点呢,我找到一段不错的代码,稍加改动,如果能够读懂它,那么你就可以任性了。 function jClass(b</div> </li> <li><a href="/article/259.htm" title="Java常用工具包 Jodd" target="_blank">Java常用工具包 Jodd</a> <span class="text-muted">Kai_Ge</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jodd/1.htm">jodd</a> <div>Jodd 是一个开源的 Java 工具集, 包含一些实用的工具类和小型框架。简单,却很强大! 写道 Jodd = Tools + IoC + MVC + DB + AOP + TX + JSON + HTML < 1.5 Mb Jodd 被分成众多模块,按需选择,其中 工具类模块有: jodd-core    &nb</div> </li> <li><a href="/article/386.htm" title="SpringMvc下载" target="_blank">SpringMvc下载</a> <span class="text-muted">120153216</span> <a class="tag" taget="_blank" href="/search/springMVC/1.htm">springMVC</a> <div>@RequestMapping(value = WebUrlConstant.DOWNLOAD) public void download(HttpServletRequest request,HttpServletResponse response,String fileName) { OutputStream os = null; InputStream is = null; </div> </li> <li><a href="/article/513.htm" title="Python 标准异常总结" target="_blank">Python 标准异常总结</a> <span class="text-muted">2002wmj</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>Python标准异常总结 AssertionError 断言语句(assert)失败 AttributeError 尝试访问未知的对象属性 EOFError 用户输入文件末尾标志EOF(Ctrl+d) FloatingPointError 浮点计算错误 GeneratorExit generator.close()方法被调用的时候 ImportError 导入模块失</div> </li> <li><a href="/article/640.htm" title="SQL函数返回临时表结构的数据用于查询" target="_blank">SQL函数返回临时表结构的数据用于查询</a> <span class="text-muted">357029540</span> <a class="tag" taget="_blank" href="/search/SQL+Server/1.htm">SQL Server</a> <div>这两天在做一个查询的SQL,这个SQL的一个条件是通过游标实现另外两张表查询出一个多条数据,这些数据都是INT类型,然后用IN条件进行查询,并且查询这两张表需要通过外部传入参数才能查询出所需数据,于是想到了用SQL函数返回值,并且也这样做了,由于是返回多条数据,所以把查询出来的INT类型值都拼接为了字符串,这时就遇到问题了,在查询SQL中因为条件是INT值,SQL函数的CAST和CONVERST都</div> </li> <li><a href="/article/767.htm" title="java 时间格式化 | 比较大小| 时区 个人笔记" target="_blank">java 时间格式化 | 比较大小| 时区 个人笔记</a> <span class="text-muted">7454103</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/eclipse/1.htm">eclipse</a><a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a><a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/MyEclipse/1.htm">MyEclipse</a> <div>个人总结! 不当之处多多包含! 引用 1.0 如何设置 tomcat 的时区:          位置:(catalina.bat---JAVA_OPTS  下面加上)          set JAVA_OPT</div> </li> <li><a href="/article/894.htm" title="时间获取Clander的用法" target="_blank">时间获取Clander的用法</a> <span class="text-muted">adminjun</span> <a class="tag" taget="_blank" href="/search/Clander/1.htm">Clander</a><a class="tag" taget="_blank" href="/search/%E6%97%B6%E9%97%B4/1.htm">时间</a> <div>/**    * 得到几天前的时间    * @param d    * @param day    * @return    */   public static Date getDateBefore(Date d,int day){    Calend</div> </li> <li><a href="/article/1021.htm" title="JVM初探与设置" target="_blank">JVM初探与设置</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。 JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台</div> </li> <li><a href="/article/1148.htm" title="SQL中ON和WHERE的区别" target="_blank">SQL中ON和WHERE的区别</a> <span class="text-muted">avords</span> <div>SQL中ON和WHERE的区别   数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。   www.2cto.com   在使用left jion时,on和where条件的区别如下:  1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。  </div> </li> <li><a href="/article/1275.htm" title="说说自信" target="_blank">说说自信</a> <span class="text-muted">houxinyou</span> <a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/%E7%94%9F%E6%B4%BB/1.htm">生活</a> <div>自信的来源分为两种,一种是源于实力,一种源于头脑.实力是一个综合的评定,有自身的能力,能利用的资源等.比如我想去月亮上,要身体素质过硬,还要有飞船等等一系列的东西.这些都属于实力的一部分.而头脑不同,只要你头脑够简单就可以了!同样要上月亮上,你想,我一跳,1米,我多跳几下,跳个几年,应该就到了!什么?你说我会往下掉?你笨呀你!找个东西踩一下不就行了吗?     无论工作还</div> </li> <li><a href="/article/1402.htm" title="WEBLOGIC事务超时设置" target="_blank">WEBLOGIC事务超时设置</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/weblogic/1.htm">weblogic</a><a class="tag" taget="_blank" href="/search/jta/1.htm">jta</a><a class="tag" taget="_blank" href="/search/%E4%BA%8B%E5%8A%A1%E8%B6%85%E6%97%B6/1.htm">事务超时</a> <div>        系统中统计数据,由于调用统计过程,执行时间超过了weblogic设置的时间,提示如下错误: 统计数据出错! 原因:The transaction is no longer active - status: 'Rolling Back. [Reason=weblogic.transaction.internal</div> </li> <li><a href="/article/1529.htm" title="两年已过去,再看该如何快速融入新团队" target="_blank">两年已过去,再看该如何快速融入新团队</a> <span class="text-muted">bingyingao</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E4%BA%92%E8%81%94%E7%BD%91/1.htm">互联网</a><a class="tag" taget="_blank" href="/search/%E8%9E%8D%E5%85%A5/1.htm">融入</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/%E6%96%B0%E5%9B%A2%E9%98%9F/1.htm">新团队</a> <div>偶得的空闲,翻到了两年前的帖子 该如何快速融入一个新团队,有所感触,就记下来,为下一个两年后的今天做参考。     时隔两年半之后的今天,再来看当初的这个博客,别有一番滋味。而我已经于今年三月份离开了当初所在的团队,加入另外的一个项目组,2011年的这篇博客之后的时光,我很好的融入了那个团队,而直到现在和同事们关系都特别好。大家在短短一年半的时间离一起经历了一</div> </li> <li><a href="/article/1656.htm" title="【Spark七十七】Spark分析Nginx和Apache的access.log" target="_blank">【Spark七十七】Spark分析Nginx和Apache的access.log</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/apache/1.htm">apache</a> <div>Spark分析Nginx和Apache的access.log,第一个问题是要对Nginx和Apache的access.log文件进行按行解析,按行解析就的方法是正则表达式:   Nginx的access.log解析正则表达式   val PATTERN = """([^ ]*) ([^ ]*) ([^ ]*) (\\[.*\\]) (\&q</div> </li> <li><a href="/article/1783.htm" title="Erlang patch" target="_blank">Erlang patch</a> <span class="text-muted">bookjovi</span> <a class="tag" taget="_blank" href="/search/erlang/1.htm">erlang</a> <div>Totally five patchs committed to erlang otp, just small patchs. IMO, erlang really is a interesting programming language, I really like its concurrency feature. but the functional programming style </div> </li> <li><a href="/article/1910.htm" title="log4j日志路径中加入日期" target="_blank">log4j日志路径中加入日期</a> <span class="text-muted">bro_feng</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/log4j/1.htm">log4j</a> <div>要用log4j使用记录日志,日志路径有每日的日期,文件大小5M新增文件。 实现方式 log4j: <appender name="serviceLog" class="org.apache.log4j.RollingFileAppender"> <param name="Encoding" v</div> </li> <li><a href="/article/2037.htm" title="读《研磨设计模式》-代码笔记-桥接模式" target="_blank">读《研磨设计模式》-代码笔记-桥接模式</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/ /** * 个人觉得关于桥接模式的例子,蜡笔和毛笔这个例子是最贴切的:http://www.cnblogs.com/zhenyulu/articles/67016.html * 笔和颜色是可分离的,蜡笔把两者耦合在一起了:一支蜡笔只有一种</div> </li> <li><a href="/article/2164.htm" title="windows7下SVN和Eclipse插件安装" target="_blank">windows7下SVN和Eclipse插件安装</a> <span class="text-muted">chenyu19891124</span> <a class="tag" taget="_blank" href="/search/eclipse%E6%8F%92%E4%BB%B6/1.htm">eclipse插件</a> <div>今天花了一天时间弄SVN和Eclipse插件的安装,今天弄好了。svn插件和Eclipse整合有两种方式,一种是直接下载插件包,二种是通过Eclipse在线更新。由于之前Eclipse版本和svn插件版本有差别,始终是没装上。最后在网上找到了适合的版本。所用的环境系统:windows7JDK:1.7svn插件包版本:1.8.16Eclipse:3.7.2工具下载地址:Eclipse下在地址:htt</div> </li> <li><a href="/article/2291.htm" title="[转帖]工作流引擎设计思路" target="_blank">[转帖]工作流引擎设计思路</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/%E5%BA%94%E7%94%A8%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">应用服务器</a><a class="tag" taget="_blank" href="/search/workflow/1.htm">workflow</a><a class="tag" taget="_blank" href="/search/%E4%BC%81%E4%B8%9A%E5%BA%94%E7%94%A8/1.htm">企业应用</a> <div> 作为国内的同行,我非常希望在流程设计方面和大家交流,刚发现篇好文(那么好的文章,现在才发现,可惜),关于流程设计的一些原理,个人觉得本文站得高,看得远,比俺的文章有深度,转载如下 ================================================================================= 自开博以来不断有朋友来探讨工作流引擎该如何</div> </li> <li><a href="/article/2418.htm" title="Linux 查看内存,CPU及硬盘大小的方法" target="_blank">Linux 查看内存,CPU及硬盘大小的方法</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/cpu/1.htm">cpu</a><a class="tag" taget="_blank" href="/search/%E5%86%85%E5%AD%98/1.htm">内存</a><a class="tag" taget="_blank" href="/search/%E7%A1%AC%E7%9B%98/1.htm">硬盘</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E5%B0%8F/1.htm">大小</a> <div>一、查看CPU信息的命令 [root@R4 ~]# cat /proc/cpuinfo |grep "model name" && cat /proc/cpuinfo |grep "physical id" model name : Intel(R) Xeon(R) CPU X5450 @ 3.00GHz model name : </div> </li> <li><a href="/article/2545.htm" title="linux 踢出在线用户" target="_blank">linux 踢出在线用户</a> <span class="text-muted">dongwei_6688</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>两个步骤: 1.用w命令找到要踢出的用户,比如下面:   [root@localhost ~]# w 18:16:55 up 39 days, 8:27, 3 users, load average: 0.03, 0.03, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT</div> </li> <li><a href="/article/2672.htm" title="放手吧,就像不曾拥有过一样" target="_blank">放手吧,就像不曾拥有过一样</a> <span class="text-muted">dcj3sjt126com</span> <div>内容提要: 静悠悠编著的《放手吧就像不曾拥有过一样》集结“全球华语世界最舒缓心灵”的精华故事,触碰生命最深层次的感动,献给全世界亿万读者。《放手吧就像不曾拥有过一样》的作者衷心地祝愿每一位读者都给自己一个重新出发的理由,将那些令你痛苦的、扛起的、背负的,一并都放下吧!把憔悴的面容换做一种清淡的微笑,把沉重的步伐调节成春天五线谱上的音符,让自己踏着轻快的节奏,在人生的海面上悠然漂荡,享受宁静与</div> </li> <li><a href="/article/2799.htm" title="php二进制安全的含义" target="_blank">php二进制安全的含义</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a> <div>PHP里,有string的概念。 string里,每个字符的大小为byte(与PHP相比,Java的每个字符为Character,是UTF8字符,C语言的每个字符可以在编译时选择)。 byte里,有ASCII代码的字符,例如ABC,123,abc,也有一些特殊字符,例如回车,退格之类的。 特殊字符很多是不能显示的。或者说,他们的显示方式没有标准,例如编码65到哪儿都是字母A,编码97到哪儿都是字符</div> </li> <li><a href="/article/2926.htm" title="Linux下禁用T440s,X240的一体化触摸板(touchpad)" target="_blank">Linux下禁用T440s,X240的一体化触摸板(touchpad)</a> <span class="text-muted">gashero</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/ThinkPad/1.htm">ThinkPad</a><a class="tag" taget="_blank" href="/search/%E8%A7%A6%E6%91%B8%E6%9D%BF/1.htm">触摸板</a> <div>自打1月买了Thinkpad T440s就一直很火大,其中最让人恼火的莫过于触摸板。   Thinkpad的经典就包括用了小红点(TrackPoint)。但是小红点只能定位,还是需要鼠标的左右键的。但是自打T440s等开始启用了一体化触摸板,不再有实体的按键了。问题是要是好用也行。   实际使用中,触摸板一堆问题,比如定位有抖动,以及按键时会有飘逸。这就导致了单击经常就</div> </li> <li><a href="/article/3053.htm" title="graph_dfs" target="_blank">graph_dfs</a> <span class="text-muted">hcx2013</span> <a class="tag" taget="_blank" href="/search/Graph/1.htm">Graph</a> <div>package edu.xidian.graph; class MyStack { private final int SIZE = 20; private int[] st; private int top; public MyStack() { st = new int[SIZE]; top = -1; } public void push(i</div> </li> <li><a href="/article/3180.htm" title="Spring4.1新特性——Spring核心部分及其他" target="_blank">Spring4.1新特性——Spring核心部分及其他</a> <span class="text-muted">jinnianshilongnian</span> <a class="tag" taget="_blank" href="/search/spring+4.1/1.htm">spring 4.1</a> <div>目录 Spring4.1新特性——综述 Spring4.1新特性——Spring核心部分及其他 Spring4.1新特性——Spring缓存框架增强 Spring4.1新特性——异步调用和事件机制的异常处理 Spring4.1新特性——数据库集成测试脚本初始化 Spring4.1新特性——Spring MVC增强 Spring4.1新特性——页面自动化测试框架Spring MVC T</div> </li> <li><a href="/article/3307.htm" title="配置HiveServer2的安全策略之自定义用户名密码验证" target="_blank">配置HiveServer2的安全策略之自定义用户名密码验证</a> <span class="text-muted">liyonghui160com</span> <div>    具体从网上看   http://doc.mapr.com/display/MapR/Using+HiveServer2#UsingHiveServer2-ConfiguringCustomAuthentication   LDAP Authentication using OpenLDAP Setting </div> </li> <li><a href="/article/3434.htm" title="一位30多的程序员生涯经验总结" target="_blank">一位30多的程序员生涯经验总结</a> <span class="text-muted">pda158</span> <a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/%E7%94%9F%E6%B4%BB/1.htm">生活</a><a class="tag" taget="_blank" href="/search/%E5%92%A8%E8%AF%A2/1.htm">咨询</a> <div>1.客户在接触到产品之后,才会真正明白自己的需求。   这是我在我的第一份工作上面学来的。只有当我们给客户展示产品的时候,他们才会意识到哪些是必须的。给出一个功能性原型设计远远比一张长长的文字表格要好。 2.只要有充足的时间,所有安全防御系统都将失败。   安全防御现如今是全世界都在关注的大课题、大挑战。我们必须时时刻刻积极完善它,因为黑客只要有一次成功,就可以彻底打败你。   3.</div> </li> <li><a href="/article/3561.htm" title="分布式web服务架构的演变" target="_blank">分布式web服务架构的演变</a> <span class="text-muted">自由的奴隶</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/%E5%BA%94%E7%94%A8%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">应用服务器</a><a class="tag" taget="_blank" href="/search/%E4%BA%92%E8%81%94%E7%BD%91/1.htm">互联网</a> <div>最开始,由于某些想法,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于这篇文章我们只关注架构的演变历程,因此就假设这个时候已经是托管了一台主机,并且有一定的带宽了,这个时候由于网站具备了一定的特色,吸引了部分人访问,逐渐你发现系统的压力越来越高,响应速度越来越慢,而这个时候比较明显的是数据库和应用互相影响,应用出问题了,数据库也很容易出现问题,而数据库出问题的时候,应用也容易</div> </li> <li><a href="/article/3688.htm" title="初探Druid连接池之二——慢SQL日志记录" target="_blank">初探Druid连接池之二——慢SQL日志记录</a> <span class="text-muted">xingsan_zhang</span> <a class="tag" taget="_blank" href="/search/%E6%97%A5%E5%BF%97/1.htm">日志</a><a class="tag" taget="_blank" href="/search/%E8%BF%9E%E6%8E%A5%E6%B1%A0/1.htm">连接池</a><a class="tag" taget="_blank" href="/search/druid/1.htm">druid</a><a class="tag" taget="_blank" href="/search/%E6%85%A2SQL/1.htm">慢SQL</a> <div>由于工作原因,这里先不说连接数据库部分的配置,后面会补上,直接进入慢SQL日志记录。   1.applicationContext.xml中增加如下配置: <bean abstract="true" id="mysql_database" class="com.alibaba.druid.pool.DruidDataSourc</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>