元素,是不是很棒?
2 scrollIntoView()
你知道吗?当页面的 URL 中包含 #something
元素时,一旦页面加载,浏览器就会自动滚动至具有这个 ID 的元素之处。
这确实是一项很贴心的功能,但如果你在页面加载之后再渲染元素,这项功能就不起作用了。
不过,你也可以通过以下方式,手动地让这项功能重新生效:
document.querySelector(document.location.hash).scrollIntoView();
3 hidden
好吧,hidden 或许不是一个方法,但如果你提出抗议,那我也要争论一下:在 hidden 的背后很可能对应着一个 setter,这可是一个货真价实的方法,对不对?
不管怎样,你是否曾经为了隐藏某个元素而使用过 myElement.style.display = 'none'
这种方法呢?如果是的话,请别再这么做了!
只需调用 myElement.hidden = true
,即可实现元素隐藏的功能。
4 toggle()
嗯,toggle 也不算是元素的方法,它实际上是元素属性上的一个方法。严格来说,这是一种为元素添加或删除某个 class 的方法,具体做法是 myElement.classList.toggle('some-class')
。
如果你曾经通过 if 条件语句为元素添加 class,那就应该赶紧改用这种做法。
正确的方式是为 toggle
方法传入第二个参数,如果该参数返回 true ,则指定的 class 就会添加至元素上。
el.classList.toggle('some-orange-class', theme === 'orange');
我知道你在想些什么:这种写法违背了 ‘toggle’ 这个词的本义(开关),那些从 IE 时代过来的开发者们都这么想,他们断言应当彻底摒弃使用第二个参数的做法。
所以,我收回我的话。不必坚持这种写法了,各位请随意!
5 querySelector()
好吧,你当然知道这个方法,但据我推测,应该只有 17% 的开发者才知道,该方法可以使用在任意元素上。
打个比方,myElement.querySelector('.my-class')
的作用是返回在 myElement
的子代中包含 my-class
这个 class 的所有元素。
6 closest
该方法可在任意元素上使用,它能够向上查找元素的树型结构,可以理解为 与 querySelector()
相反的方法。因此,我可以通过以下方法获取当前内容的对应标头:
myElement.closest('article').querySelector('h1');
这段方法首先向上找到最近的
元素,然后再向下找到最近的
元素。
7 getBoundingClientRect()
在对 DOM 元素调用该方法时,将返回一个包含其空间结构详细信息的简单对象。
{
x: 604.875,
y: 1312,
width: 701.625,
height: 31,
top: 1312,
right: 1306.5,
bottom: 1343,
left: 604.875
}
不过,在调用该方法时需要注意两点:
调用该方法会导致元素的重绘,根据设备与页面复杂程度的不同,重绘的时间可能会占用几毫秒。因此,如果你需要重复地调用该方法,例如在使用动画的场景下,需要特别注意这一点。
并非所有的浏览器都会返回这些值,他们有这个责任么?
8 matches()
假设我需要检查某个元素是否包括一个特定的 class。
这是最复杂的方式:
if (myElement.className.indexOf('some-class') > -1) {
// do something
}
比上面的好一点,但和本文没什么关系:
if (myElement.className.includes('some-class')) {
// do something
}
最佳方式:
if (myElement.matches('.some-class')) {
// do something
}
9 insertAdjacentElement()
我今天才刚学到这一条!它的作用类似于 appendChild()
,但能够更好地控制插入子元素的具体位置。
parentEl.insertAdjacentElement('beforeend', newEl)
与 parentEl.appendChild(newEl)
的作用是一样的,但除此之外,你还可以指定 beforebegin
、afterbegin
或 afterend
这几个参数值,元素将按这些值的名称所示插入相应的位置。
多么强大的控制能力!
多棒的点子。
10 contains()
你有没有遇到过这样的情形,需要知道某个元素是否被包含在另一个元素中?至少我本人经常会遇到这样的问题。
打个比方,假设我在处理一个鼠标点击事件时,需要知道它是发生在一个模态窗口中还是发生在外面(这样我才能够关闭这个窗口),我大概会这么做:
const handleClick = e => {
if (!modalEl.contains(e.target)) modalEl.hidden = true;
};
代码中的 modalEl
是模态窗口的引用,而 e.target
则代表各种发生点击事件的元素。
有趣的是,每当遇到这种情形,在我第一遍写代码的时候,100%的概率会将其中的判断逻辑写反。
哪怕是我提高了警惕,并在保存代码之前尝试将逻辑颠倒过来写,仍然还是写错。
#11 getAttribute()
这毫无疑问是所有元素方法中最没用的一个,但有一个场景除外。
你是否记得,我在本文的开头部分曾提到,对象的属性 property 通常也会映射到它的特性 attribute 中(我在上文中特别用粗体强调了这一点,注意不是斜体)?
但在某一个场景中,这种假设并不成立,这就是某个元素的 href
特性,例如 Cat
。
调用 el.href
不会返回 /animals/cat
,这可能与你的猜测不符。原因在于
元素实现了 HTMLHyperlinkElementUtils接口,该接口提供了一系列辅助属性,例如 prototol
与 hash
等等,以展现与链接的目标相关的值。
href
就是其中一个实用的属性,它将返回完整的 URL,并去掉无用的空格,而不是返回在特性中所指定的相对 URL。
这样一来,如果你需要获取 href
特性中的字符串字面值,就只能使用 el.getAttribute('href')
方法了。
12 dialog 元素的三大法宝
是一个相对较新的元素,它带来了两个还算能用的方法,和一个非常棒的方法。其中show()
和 close()
方法的功能与你所想象的一样,我感觉还算可以。
而 showModal()
方法能够将
元素显示在页面的顶层,居中对齐,这正是所期望的模态窗口行为。你无需指定 z-index
,或者手动添加一个灰色的背景,也不需要监听 esc 按键以关闭此窗口。浏览器能够理解模态窗口的工作方式,并自动完成你所期望的行为。
这真是太棒了。
13 forEach()
某些情况下,当你获取到一个元素列表的引用时,可以通过 forEach()
方法进行迭代式调用。
用 for()
进行循环已经是 2014 年代的老古董了。
假设你需要记录页面中所有链接的 URL,可以输入以下代码,只要你不介意看到报错。
document.getElementsByTagName('a').forEach(el ==> {
console.log(el.href);
});
也可以这么做:
document.querySelectorAll('a').forEach(el ==> {
console.log(el.href);
});
问题出在 getElementsByTagName
与其他类似的 get… 方法返回的是一个 HTMLCollection
接口,而 querySelectorAll
返回的是一个 NodeList
接口。
而 NodeList
接口为我们提供了 forEach()
方法(此外还包括 keys()
、values()
,和 entries()
等方法 )。
理想的情况下,最好是每个方法都只返回简单的数组,而不是返回一些类似数组的对象。不过别担心,ECMA 大神为我们提供了 Array.from()
方法,它能够把所有这些类数组对象转化为一个真正的数组。
所以,这样的代码就能够正常工作:
Array.from(document.getElementsByTagName('a')).forEach(el ==> {
console.log(el.href);
});
奖励关卡:创建了一个数组之后,你就能够对其使用 map()
、filter()
和 reduce()
以及其他各种数组方法了。打个比方,先不管目的是什么,总之你可以按以下方式返回所有外部链接的数组:
Array.from(document.querySelectorAll('a'))
.map(el => el.origin)
.filter(origin => origin !== document.origin)
.filter(Boolean);
我最喜欢的一个方法是 .filter(Boolean)
,它肯定会给将来的我在调试问题时带来无穷的烦恼,哈哈。
14 表单
或许你已经知道,
有一个 submit()
方法。但或许你不知道表单还有一个 reset()
方法,而且当你需要对表单元素进行验证时,还可以调用 reportValidity()
方法。
此外,你也可以通过对表单的 elements
属性加上元素的 name
特性 的方式调用它的属性。打个比方,myFormEl.elements.email
将返回属于某个
中的
元素(‘属于’,并不代表它一定是一个‘子元素’)。
好吧,其实刚才我是骗你的。elements
并不会返回一个元素列表,而是返回一个控件列表(显然它不是一个数组,因为没必要这么做)。
举例来说:假设你有三个单选按钮,每个都有相同的名称 animal
,那么 formEl.elements.animal
将返回一个单选按钮集的引用(一个控件,三个元素)。
而 formEl.elements.animal.value
将返回所选中的单选按钮的值。
这种语法看起来非常古怪,让我们来分解一下看看:formEl
是一个元素,elements
则对应 HTMLFormControlsCollection 接口,这并非一个真正的数组,其中的每一项内容也未必代表一个 HTML 元素。animal
是多个单选按钮的集合,只是因为他们具有相同的 name
特性才聚集在一起(RadioNodeList 接口就是为此而生的),而 value
则返回该集合中所选中的那个单选按钮的 value
特性。
非常直观,嗯……
15 select()
感谢你耐心阅读本文,希望本文能为你带来一些新知识,给你的工作带来实际的用途。
你可能感兴趣的:(深入15个HTML元素方法,你见过吗?)
十年老Python程序员:给我一个链接,没有我不能爬的视频,只有我顶不住的视频
IT孔乙己
一、写在前面真的,为什么别人发游戏这么多人看,我发了两次了加起来才一百个。算了算了,不整游戏了,反正你们也不爱看~python今天来试试把头条上扭腰上热门的那些妹子爬一爬,不知道我顶不顶得住~python二、准备工作1、使用的环境python3.8pycharm2021.2专业版2、要用的第三方模块seleniumrequestsparsel三、大致流程鉴于你们不喜欢我啰嗦,但是流程呢,我还是要给
计算机视觉:人工智能的“眼睛”
人工智能教程
人工智能 计算机视觉 机器学习 算法 pytorch python 数据结构
前言在人工智能的众多领域中,计算机视觉(ComputerVision)无疑是其中最为引人注目的方向之一。它赋予了机器“看”的能力,使计算机能够像人类一样理解和解释视觉信息。从自动驾驶汽车到医疗影像诊断,从安防监控到虚拟现实,计算机视觉的应用场景无处不在,深刻地改变着我们的生活和工作方式。本文将深入探讨计算机视觉的核心技术、应用场景以及未来的发展趋势,帮助您全面了解这一充满活力的领域。一、计算机视觉
晨跑产生的“灵感”
觉醒的蜗牛
都说“空无”状态的时候容易产生灵感,这对创作之人来讲是个非常好的事。关于写作已经有快三个月时间了,时常为了不知道写什么而苦恼,而“灵感”就显得至关重要。作为一名演讲培训师,早已习惯了对万事万物喜欢追本溯源,喜欢总结规律,推己及人。“灵感”的产生一般来自大脑处于“空无”的状态,或者说“无念”的状态。这是什么意思?就是一个人处于大脑没有思考并且保持意识高度临在状态的时候。可能很多人又不明白意识高度临在
《相面天师》第九百二十四章 道歉
先峰老师
“李先生,咱……咱们还是在里面安全点吧?”跟着李尚鸿走出会场的时候,汤加林那一路上简直就是背若芒刺一般,要是眼睛能杀人的话,他不知道自己已经死了多少次了,浑身的衣襟都被冷汗打湿掉了。要知道,虽然这次异能者大会背后的组织者,都是各国政府,但是在明面上,没有任何一个国家的政府会承认这次会议的,所以不管在会场中发生什么事情,都不会被追究的。就像是泰国国师乃他信.沙旺素西被李尚鸿用“生死簿”杀死,泰国政府
元宵节的碎碎念
方糖多多
昨天晚上宝宝7点就睡着了,大概是睡的太早,凌晨两点忽然醒了,喝完奶咿咿呀呀的在床上说着话,不停踢腾着腿。是真的困,但还是被她的样子给逗笑了。为了让她快点儿消耗体力继续睡觉,我帮她翻身趴下,这下如了小姑娘的愿,更加开心的咿咿呀呀起来。我于是爬起来坐床上陪着她。直到她趴累了,抱怀里喝完奶睡下。这中间又喂过一两次奶。7:00的时候宝宝又醒了,比正常睡到8:30提前了一个半小时又。我把奶递给她,她吭哧着吃
希鹿生活邀请码怎么选?希鹿生活邀请码填谁的好?
高省APP珊珊
希鹿生活邀请码在哪里呢?这个问题很多人都在问,因为在没有APP注册的时候,它需要填写邀请码才能够注册成功的,没有邀请码不会卡在这一步,那么很多朋友都在问邀请码,到底哪个才是正确的呢?我为何从希鹿生活转到高省呢?当然高省佣金更高啊高省APP佣金更高,模式更好,终端用户不流失。咱们高省是一个可省钱佣金高,能赚钱有收益的平台,百度有几百万篇报道,也期待你的加入。珊珊导师,高省邀请码777777,送2皇冠
O (1) 空间搞定链表:穿针引线法核心技巧与例题
无聊的小坏坏
算法 链表 c++ 算法
文章目录穿针引线法的核心思想基础应用:链表反转1.全链表反转2.部分链表反转高级应用:链表重排穿针引线法的设计模式常见问题解决方案1.K个一组反转链表2.环形链表检测在链表操作的世界里,"穿针引线"是一种优雅而高效的技巧,它通过精准的指针操作,像缝纫一样重新连接节点,解决各种复杂的链表问题。这种技巧不依赖额外数据结构,空间复杂度仅为O(1),是算法面试中的必备技能。穿针引线法的核心思想指针即针线:
2023-11-15 自然科学学术论文=记叙文+说明文+议论文写作
不停的追梦人
一篇自然科学的实验性的原创论文,包含了前言、材料方法、结果、讨论结论,这四块主要内容。而前言部分,就是记叙文,介绍所有研究问题的由来;而材料方法和结果部分,就是说明文部分,介绍材料方法具体过程和结果部分,主要描述结果的情况详细具体情况;而讨论结论,就是议论文部分,以实验结果为论据,来证明你的分论点,而结论就是你的一篇文章总论点。
Kubernetes 资源管理
一、ResourceQuota首先看一下ResourceQuota(资源配额)的使用,资源配额是限制某个命名空间对资源使用的一个总量限制,比如内存、CPU、Pod数量等。1.什么是资源配额在生产环境中,可能会有多个Kubernetes集群,面向开发环境、测试环境、预生产环境和生产环境等。身为Kubernetes管理员,必然知道每个环境的规模有多大、可调度资源有多少,并且知道如何合理地为容器分配内存
精读《能断金刚》(14):六时书
一心船长
6:471上一篇介绍到,要想将“万物潜能和意识铭印”这一套理念转化为个人事业上的成功,最好的实践方式是建立一个追踪体系,你用这个体系来积累你的行为。在西藏,这套体系被称为“undruk”,意思是“一天六次”,我们称之为“六时书”。具体如何实施?出门给自己买一本可以随身携带的小记事本。然后回顾之前提到的46个商业问题,从中找出自己最相关的三个问题。这些是你最棘手的三大问题。当某个问题化解或者情况有所
如何使用 OpenCV 打开指定摄像头
在计算机视觉应用中,经常需要从特定的摄像头设备获取视频流。例如,在多摄像头环境中,当使用OpenCV的cv::VideoCapture类打开摄像头时,如果不指定摄像头的ID,可能会随机打开系统中的某个摄像头,或者按照设备连接的顺序打开第一个可用的摄像头。比如: //打开两个摄像头 cv::VideoCapture cap0(0); if (!cap0.isOpened()){ c
部署 Zabbix 企业级分布式监控
别骂我h
zabbix 分布式 网络
一、监控系统的功能概述监控,从中文的字义来看,有两个内容,一是检测,二是控制。重点在第一个字眼,即检测、预防的意思。监控,对应的英文单词是Monitoring。在计算机领域,可以将其分为5种监控类型:应用性能监控业务交易监控网络性能监控操作系统监控上面5种类型将监控这个概念划分成了多个领域。我们通常所说的监控,都会模糊地包含以上5个细分的领域。在任何一个IT业务环境中,都会存在各种各样的硬件设备、
1.7分钟了解华宝协办app亏损惨重!虚假数字投票被骗套路遭曝光!
最新曝光36
1.华宝协办APP在平台不能提现怎么办?2.华宝协办APP这个软件靠谱可信吗?3.华宝协办APP在软件做任务被骗?4.华宝协办APP软件app无法登录?5.华宝协办APP平台是真的吗?6.华宝协办APP被骗无法提现,操作失误!7.华宝协办APP平台是騙局吗?8.华宝协办APP被骗无法出金如何维护自己的合法权益!希望看到这篇文章的人可以及时止损;请及时联系为你提供解决方案,要想讨回损害资产务必阅读以
6.24
一只111
Thoughtfeedsitselfwithitsownwordsandgrows。思想以他自己的语言喂养它自己,而成长起来了。网上有个段子,细思恐极的是,大脑告诉你大脑是你身上最聪明的器官。感觉和上边这句诗有着异曲同工之处,有了思想,知道方向,学到如何去汲取去更进一步,然后就有了更加成熟的思想,可能是这样吧。
林欢周晴《狐臭校花污染源》完结版免费阅读_狐臭校花污染源全文免费阅读_林欢周晴(狐臭校花污染源)完整版免费在线阅读_《狐臭校花污染源》全集在线阅读_林欢周晴(狐臭校花污染源)最新章节免费在线阅读...
小说全文全本
林欢周晴《狐臭校花污染源》完结版免费阅读_狐臭校花污染源全文免费阅读_林欢周晴(狐臭校花污染源)完整版免费在线阅读_《狐臭校花污染源》全集在线阅读_林欢周晴(狐臭校花污染源)最新章节免费在线阅读_(林欢周晴)完结版在线阅读主角配角:林欢周晴简介:校花室友有狐臭我提出切除汗腺就可痊愈,但她不领情,反而给我下药,趁我昏迷,用腋下将我活生生闷死临死前,我还听到她怨毒的声音:要不是你把我有狐臭的事情说出去
熬夜后遗症
娜娜陪你成长
在持续10多天凌晨十二点多,甚至一点多点睡觉,早上六点多就醒了以后,今天我终于撑不住了。累到不想说话,做什么事情都提不起兴趣,而且脑子似乎停止了思考,变得很迟钝。对家人和孩子都非常没有耐心、易怒,嘴巴的口腔溃疡反复出现,而且每次都持续很久。医生诊断后,说是阴虚火旺,而产生的一个关键原因是熬夜,没休息好。熬夜干嘛了?或者追剧,或者把本该白天完成的日更,拖到晚上十点多才去做,或者胡思乱想,迟迟睡不着…
未来三年做什么生意能赚钱?分享5个低成本高利润的好项目
高省APP大九
未来三年,只要你用心做好以下四个行业之一,不赚钱可以来找我,话不多说,直接上干货!1、社交导购电商社交导购电商是当下最值得年轻人去尝试创业的一种零成本创业模式,也是最早淘宝客的优化版,无货源无售后操作模式,很多小伙伴不知道怎么做,这里我给大家介绍一个靠谱的淘宝导购电商赚钱渠道,可以用来抖音快速短视频直播带货选品,可以地摊进货赚佣金,也可以做微信羊毛群,捡漏群,社群团购等多种赚钱方法就算你不用这个平
[原创文集]女孩子真正的安全感
旅游学院20旅管一班
旅游学院20旅管本一班罗美英巴菲特给女儿一-生的忠告:如果将来我有女儿,不会从小给她灌输要温柔、要善良、要懂事、要乐于助人这类思想。这些看似美好的词,变成束缚要求在-一个人身,上在我看来和德绑架没什么两样。我会教她权衡利弊,做事之前想好得失,先爱自己,在爱别人,我要把她养成一-个既世俗,又浪漫的精明女人。我非常肯定这个父亲的教育方法,随着我们的长大,我们开始接触爱情的懵懂,在我们身边有很多女孩子都
全本免费小说阅读神秘幻梦(林小涛段雅馨)_神秘幻梦(林小涛段雅馨)免费阅读
大叔书楼
《神秘幻梦》主角:林小涛段雅馨,简介:她人长得很漂亮,172的模特身高,36D的胸脯,翘挺的臀部,性感女人有的一切她都有,走到哪里都是男人目光的焦点,老公也是国企高层,人人都羡慕她!关注微信公众号【春分文馆】去回复个书号【1249】即可阅读小说【神秘幻梦】全文内容!!!段雅馨今年28岁,正是如狼似虎的年纪。人长得很漂亮,172的模特身高,性感女人有的一切她都有,走到哪里都是男人目光的焦点。奈何老公
36岁郭碧婷产女,却至今未领证,为啥这么多女星想挤进豪门?
麦大人
01重磅消息,郭碧婷终于生产了。在中秋及国庆当天,女儿出生,重7磅,合3180克,我们的清纯女神终于长大了。豪门家的喜事,自然是不同于平常人家,传闻向太赠与郭碧婷一套别墅,但并未得到向家人的证实。然而,以前一向高调的向太却失了声。有网友担忧,向家人是在意郭碧婷生的是女儿。毕竟,到现在为止,向家人没有一个人来表示庆祝,以前可是高调的不得了,恨不得立马和郭碧婷白头偕老。而现在,向左倒是失了声,不见下文
关于战友
宇宙外穿梭
晚饭后一个战友突然发来视频聊起了部队的往事和近况一天晚上月光明亮而圆满,云也没走,夜空神秘令人着迷。我两同一班岗,这不算巧,反正轮到只是时间的问题,但是他也对月亮和这黑夜有兴趣。于是我两下岗后,正好十二点多,带了点吃的去了营区的湖边,旁边有木板楼梯,坐下,闲聊起来!没有风,没有景只有静和光。月光,湖光云和黑,吃点东西,他喝雪碧我喝水,两人在湖边坐了半个多点,也不觉得困。想起来退伍也有两个多月了临走
web第一次作业
这日光醉了城.
前端 javascript 开发语言
实现一个登录页面、实现一个注册页面;实现一个主页-登录页面:`login.html`-注册页面:`register.html`-主页:`index.html`要求如下:-主页中,可以点击**注册**或者**登录**能直接在新窗口跳转到对应的页面-登录页面中,输入账号、密码可以点击登录-自动跳转到主页-注册页面中,输入账号、密码、确认密码、昵称,点击注册,注册后自动跳转到登录页面login.html
第一次拓印树叶
高实幼若男
天气逐渐的寒冷起来,孩子们都穿上了厚厚的外套,地上的叶子被风儿吹的满地都是,有些叶子已经显得枯黄。为了收集树叶做各种集体活动和制作,这天上午,我们继续去幼儿园找寻树叶。我们分成四个小队,分布在幼儿园的各个方位开始捡拾树叶。我带着一队孩子,到达侧院,开始孩子们开始捡拾水泥地上的树叶,这些叶子被风吹的一圈一圈的转,孩子们边捡边观察着,还有的孩子跟着叶子的方向一同跑动着旋转呢!开心就是这么简单呐。没过多
ensp——动态路由OSPF实验配置
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.
华为
一划分网段先划分两个area的大网段192.168.1.0000-0000(即192.168.1.0/25)为area0192.168.1.1000-0000(即192.168.1.128/25)为area1在area0上继续划分小网段192.168.1.0000-0000(即192.168.1.0/27)为R1-R3的链接192.168.1.0010-0000(即192.168.1.32/27)
关于梦
阿佳儿
我只要睡着,就会做梦,无论是白天还是晚上。但经常听到有人说一晚上都无梦而眠,看来睡得真平静。难道做梦就影响了睡眠的质量吗?我从来没有不做梦的时候啊。难道我的睡眠质量一直很差么!对此问题,我还买过一本关于《梦的解析》的书来看,翻了几页,不知所云,心理学大师佛洛伊德的一套梦的理论,看的人直打瞌睡。但是,有一点是肯定的,梦是现实的一种反映,能挖掘一些人的潜意识,甚至能解释一些现实生活中人的一些非理性行为
Python 进阶(一):多线程
目录1.相关概念1.1解释器1.2GIL2.threading2.1方法属性2.2线程对象2.3锁对象2.4条件对象2.5信号量对象2.6事件对象1.相关概念1.1解释器Python解释器的主要作用是将我们在.py文件中写好的代码交给机器去执行,比较常见的解释器包括如下几种:CPython:官方解释器,我们从官网下载安装后获得的就是这个解释器,它使用C语言开发,是使用范围最广泛的Python解释器
2023-08-29
小豆宝
党中央决定在全党大兴调查研究,作为全党开展主题教育的重要内容,推动全面建设社会主义现代化国家开好局起好步。广大党员干部要带头深入调查研究,不断提高调查研究能力,把党中央决策部署贯彻落实好。提高政治站位,了解调查研究的重要意义,提高调查研究的"高度"。调查研究不能是"一次跟风"。"大兴调查研究之风",这"风"不应是贯彻落实上级部署的被动之风,也不应是"别人在调研,我也要调研"的从众之风。端正"谋定而
Python 基础(十四): 错误和异常
目录1错误2异常2.1内置异常2.2异常处理2.3抛出异常2.4自定义异常程序中的错误我们通常称为bug,工作中我们不仅需要改自己程序中的bug,还需要改别人程序中的bug,新项目有bug要改,老项目也有bug要改,可以说bug几乎贯穿一个程序员的职业生涯…我们通常将bug分为Error(错误)和Exception(异常),我们下面来具体学习下Python中的错误和异常。1错误错误通常是指程序中的
人不可贪心
宁静致远_e0d7
“人心不足蛇吞象”是一个汉语短语,它是比喻人的欲望得不到满足,就会做出蛇吞象的事情。人要是贪婪无厌了,就容易被自己的欲望所害。关于“人心不足蛇吞象”这个短语,民间还流传着一个故事呢。相传在古代,有一个打柴为生的樵夫,一天打柴的时候发现一条受伤的小蛇。心底善良的樵夫就把蛇带回家,给它治好伤喂养在家里。蛇也有灵性的,时间长了和樵夫有感情了。可是眼看着蛇一年年长大,吃得越来越多,樵夫觉得养不起了,就把蛇
0106晨间日记
我是彩虹小姐
【今日完成】1.读《掌控习惯》,完成财富共创打卡2.英语学习记单词30个3.看完文案书籍《非常文案》4.看综艺节目,触及人性问题,不免有些感伤5.文案抄写5则6.写文7.看牙8.boss直聘沟通【今日心得】学习比较专注,不错【今日见识】生活就是一连串选择的集合文案的框架设计,顿时觉得万物相通,都有一个可普适的框架【需要改进】5秒停止瞎想【明日目标】1.阅读文案相关书籍2.英语打卡30个单词3.阅读
Nginx负载均衡
510888780
nginx 应用服务器
Nginx负载均衡一些基础知识:
nginx 的 upstream目前支持 4 种方式的分配
1)、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2)、weight
指定轮询几率,weight和访问比率成正比
RedHat 6.4 安装 rabbitmq
bylijinnan
erlang rabbitmq redhat
在 linux 下安装软件就是折腾,首先是测试机不能上外网要找运维开通,开通后发现测试机的 yum 不能使用于是又要配置 yum 源,最后安装 rabbitmq 时也尝试了两种方法最后才安装成功
机器版本:
[root@redhat1 rabbitmq]# lsb_release
LSB Version: :base-4.0-amd64:base-4.0-noarch:core
FilenameUtils工具类
eksliang
FilenameUtils common-io
转载请出自出处:http://eksliang.iteye.com/blog/2217081 一、概述
这是一个Java操作文件的常用库,是Apache对java的IO包的封装,这里面有两个非常核心的类FilenameUtils跟FileUtils,其中FilenameUtils是对文件名操作的封装;FileUtils是文件封装,开发中对文件的操作,几乎都可以在这个框架里面找到。 非常的好用。
xml文件解析SAX
不懂事的小屁孩
xml
xml文件解析:xml文件解析有四种方式,
1.DOM生成和解析XML文档(SAX是基于事件流的解析)
2.SAX生成和解析XML文档(基于XML文档树结构的解析)
3.DOM4J生成和解析XML文档
4.JDOM生成和解析XML
本文章用第一种方法进行解析,使用android常用的DefaultHandler
import org.xml.sax.Attributes;
通过定时任务执行mysql的定期删除和新建分区,此处是按日分区
酷的飞上天空
mysql
使用python脚本作为命令脚本,linux的定时任务来每天定时执行
#!/usr/bin/python
# -*- coding: utf8 -*-
import pymysql
import datetime
import calendar
#要分区的表
table_name = 'my_table'
#连接数据库的信息
host,user,passwd,db =
如何搭建数据湖架构?听听专家的意见
蓝儿唯美
架构
Edo Interactive在几年前遇到一个大问题:公司使用交易数据来帮助零售商和餐馆进行个性化促销,但其数据仓库没有足够时间去处理所有的信用卡和借记卡交易数据
“我们要花费27小时来处理每日的数据量,”Edo主管基础设施和信息系统的高级副总裁Tim Garnto说道:“所以在2013年,我们放弃了现有的基于PostgreSQL的关系型数据库系统,使用了Hadoop集群作为公司的数
spring学习——控制反转与依赖注入
a-john
spring
控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心。 控制反转一般分为两种类型,依赖注入(Dependency Injection,简称DI)和依赖查找(Dependency Lookup)。依赖注入应用比较广泛。
用spool+unixshell生成文本文件的方法
aijuans
xshell
例如我们把scott.dept表生成文本文件的语句写成dept.sql,内容如下:
set pages 50000;
set lines 200;
set trims on;
set heading off;
spool /oracle_backup/log/test/dept.lst;
select deptno||','||dname||','||loc
1、基础--名词解析(OOA/OOD/OOP)
asia007
学习基础知识
OOA:Object-Oriented Analysis(面向对象分析方法)
是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题。OOA与结构化分析有较大的区别。OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析。
OOA(面向对象的分析)模型由5个层次(主题层、对象类层、结构层、属性层和服务层)
浅谈java转成json编码格式技术
百合不是茶
json编码 java转成json编码
json编码;是一个轻量级的数据存储和传输的语言
在java中需要引入json相关的包,引包方式在工程的lib下就可以了
JSON与JAVA数据的转换(JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非
常适合于服务器与 JavaScript 之间的数据的交
web.xml之Spring配置(基于Spring+Struts+Ibatis)
bijian1013
java web.xml SSI spring配置
指定Spring配置文件位置
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring-dao-bean.xml,/WEB-INF/spring-resources.xml,
/WEB-INF/
Installing SonarQube(Fail to download libraries from server)
sunjing
Install Sonar
1. Download and unzip the SonarQube distribution
2. Starting the Web Server
The default port is "9000" and the context path is "/". These values can be changed in &l
【MongoDB学习笔记十一】Mongo副本集基本的增删查
bit1129
mongodb
一、创建复本集
假设mongod,mongo已经配置在系统路径变量上,启动三个命令行窗口,分别执行如下命令:
mongod --port 27017 --dbpath data1 --replSet rs0
mongod --port 27018 --dbpath data2 --replSet rs0
mongod --port 27019 -
Anychart图表系列二之执行Flash和HTML5渲染
白糖_
Flash
今天介绍Anychart的Flash和HTML5渲染功能
HTML5
Anychart从6.0第一个版本起,已经逐渐开始支持各种图的HTML5渲染效果了,也就是说即使你没有安装Flash插件,只要浏览器支持HTML5,也能看到Anychart的图形(不过这些是需要做一些配置的)。
这里要提醒下大家,Anychart6.0版本对HTML5的支持还不算很成熟,目前还处于
Laravel版本更新异常4.2.8-> 4.2.9 Declaration of ... CompilerEngine ... should be compa
bozch
laravel
昨天在为了把laravel升级到最新的版本,突然之间就出现了如下错误:
ErrorException thrown with message "Declaration of Illuminate\View\Engines\CompilerEngine::handleViewException() should be compatible with Illuminate\View\Eng
编程之美-NIM游戏分析-石头总数为奇数时如何保证先动手者必胜
bylijinnan
编程之美
import java.util.Arrays;
import java.util.Random;
public class Nim {
/**编程之美 NIM游戏分析
问题:
有N块石头和两个玩家A和B,玩家A先将石头随机分成若干堆,然后按照BABA...的顺序不断轮流取石头,
能将剩下的石头一次取光的玩家获胜,每次取石头时,每个玩家只能从若干堆石头中任选一堆,
lunce创建索引及简单查询
chengxuyuancsdn
查询 创建索引 lunce
import java.io.File;
import java.io.IOException;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Docume
[IT与投资]坚持独立自主的研究核心技术
comsci
it
和别人合作开发某项产品....如果互相之间的技术水平不同,那么这种合作很难进行,一般都会成为强者控制弱者的方法和手段.....
所以弱者,在遇到技术难题的时候,最好不要一开始就去寻求强者的帮助,因为在我们这颗星球上,生物都有一种控制其
flashback transaction闪回事务查询
daizj
oracle sql 闪回事务
闪回事务查询有别于闪回查询的特点有以下3个:
(1)其正常工作不但需要利用撤销数据,还需要事先启用最小补充日志。
(2)返回的结果不是以前的“旧”数据,而是能够将当前数据修改为以前的样子的撤销SQL(Undo SQL)语句。
(3)集中地在名为flashback_transaction_query表上查询,而不是在各个表上通过“as of”或“vers
Java I/O之FilenameFilter类列举出指定路径下某个扩展名的文件
游其是你
FilenameFilter
这是一个FilenameFilter类用法的例子,实现的列举出“c:\\folder“路径下所有以“.jpg”扩展名的文件。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
C语言学习五函数,函数的前置声明以及如何在软件开发中合理的设计函数来解决实际问题
dcj3sjt126com
c
# include <stdio.h>
int f(void) //括号中的void表示该函数不能接受数据,int表示返回的类型为int类型
{
return 10; //向主调函数返回10
}
void g(void) //函数名前面的void表示该函数没有返回值
{
//return 10; //error 与第8行行首的void相矛盾
}
in
今天在测试环境使用yum安装,遇到一个问题: Error: Cannot retrieve metalink for repository: epel. Pl
dcj3sjt126com
centos
今天在测试环境使用yum安装,遇到一个问题:
Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
处理很简单,修改文件“/etc/yum.repos.d/epel.repo”, 将baseurl的注释取消, mirrorlist注释掉。即可。
&n
单例模式
shuizhaosi888
单例模式
单例模式 懒汉式
public class RunMain {
/**
* 私有构造
*/
private RunMain() {
}
/**
* 内部类,用于占位,只有
*/
private static class SingletonRunMain {
priv
Spring Security(09)——Filter
234390216
Spring Security
Filter
目录
1.1 Filter顺序
1.2 添加Filter到FilterChain
1.3 DelegatingFilterProxy
1.4 FilterChainProxy
1.5
公司项目NODEJS实践0.1
逐行分析JS源代码
mongodb nginx ubuntu nodejs
一、前言
前端如何独立用nodeJs实现一个简单的注册、登录功能,是不是只用nodejs+sql就可以了?其实是可以实现,但离实际应用还有距离,那要怎么做才是实际可用的。
网上有很多nod
java.lang.Math
liuhaibo_ljf
java Math lang
System.out.println(Math.PI);
System.out.println(Math.abs(1.2));
System.out.println(Math.abs(1.2));
System.out.println(Math.abs(1));
System.out.println(Math.abs(111111111));
System.out.println(Mat
linux下时间同步
nonobaba
ntp
今天在linux下做hbase集群的时候,发现hmaster启动成功了,但是用hbase命令进入shell的时候报了一个错误 PleaseHoldException: Master is initializing,查看了日志,大致意思是说master和slave时间不同步,没办法,只好找一种手动同步一下,后来发现一共部署了10来台机器,手动同步偏差又比较大,所以还是从网上找现成的解决方
ZooKeeper3.4.6的集群部署
roadrunners
zookeeper 集群 部署
ZooKeeper是Apache的一个开源项目,在分布式服务中应用比较广泛。它主要用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步、集群管理、配置文件管理、同步锁、队列等。这里主要讲集群中ZooKeeper的部署。
1、准备工作
我们准备3台机器做ZooKeeper集群,分别在3台机器上创建ZooKeeper需要的目录。
数据存储目录
Java高效读取大文件
tomcat_oracle
java
读取文件行的标准方式是在内存中读取,Guava 和Apache Commons IO都提供了如下所示快速读取文件行的方法: Files.readLines(new File(path), Charsets.UTF_8); FileUtils.readLines(new File(path)); 这种方法带来的问题是文件的所有行都被存放在内存中,当文件足够大时很快就会导致
微信支付api返回的xml转换为Map的方法
xu3508620
xml map 微信api
举例如下:
<xml>
<return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
<appid><