1. eventalert,英语必修一unit4单词巧记?
earthquake n.地震
earth(地球)+quake(震动)
quake n.地震
right way立刻;马上
right(正确的) way(路)
well n.井
“挖”井
crack n.裂缝;噼啪声
谐音记忆这个单词:敲击石头发出的卡卡的声音
smelly adj.发臭的;有臭味的
smell n.气味v.闻
farmyard n.农场;农家
farm(农场)加上yard(院子)就是农场了
pipe n.管;管道
这个单词也是由声音变出来的:敲击管子会发出砰砰的声响
burst vi. n.爆裂;爆发
【谐音】嘣儿死它,爆炸的声音
million n.百万
美丽嗯,一百万,好美丽
event n.事件;大事
e(出)+vent(went来)=出来个大事
as if仿佛;好像
at an end 结束;终结
end n.终止
nation n.民族;国家;国民
native adj.本国的
canal n.运河;水道
can n.罐头;容器 ~加上al(…性质)
steam n.蒸汽;水汽
额,这个大家好像都有在玩吧,吃鸡战场。(至于为啥子和蒸汽联系上了?……)
dirt n.污垢;泥土
前几单元有发,它有个兄弟叫dirty(脏的)
ruin n. 废墟vt.毁灭;使破产
是不是和rain好相似。可能这是rain(雨)的强化版,直接把房子啊,车子啊给破坏掉了
in ruins 严重受损;破败不堪
suffering n.苦难;痛苦
suffer(遭受,忍受)suf(在…下面)+fer(带) 带你到十八层地狱体验一番痛苦,嘿嘿!!
extreme adj.极度的
extra(额外的,特别的,非常的)supreme(终极的,最大的,极端的)
injure vt.损害;伤害
in(不)+jury(应急的)=不应急则可能会受到伤害
survivor n.幸存者;生还者;残存物
survive(生存)是由sur(在上面)+vivid(生动的)+or(人或物)组合到一起形成的
destroy vt.破坏;毁坏;消灭
de(坏)+story(=struct)结构=破坏
brick n.砖;砖块
跟break(打碎)很像
dam n.水坝;堰堤
“大门”就是水流向大海的阻隔,水坝
track n.轨道;足迹;痕迹
【谐音】踹咳。足迹要踹咳出来
useless adj.无用的;无效的;无益的
不多说,直接拆开 use(有用)+less(否定后缀)
shock vt&vi n.(使)震惊;震动
“休克”,休克真吓人
rescue n.&vt.营救
re-(强调)+s-(=ex出)+cue(=cuss-)摇=摇出来~营救
trap vt. 使陷入困境n.陷阱;困境
tr-(踩,踏),发音类似于“踹”,踹和踩,踏同一个意思。
这两个词很有意思:part(部分) trap(陷阱) 部分人掉进了陷阱
electricity n.电;电流;电学
electric(电的)
这两个词很常见,不用怎么记,平常做题注意一下就可以了
disaster n.灾难;灾祸
dis-(坏) + aster-(星)~老夫纵观星相,今日必有灾祸下凡
dig out 掘出;发现
dig(挖掘)地嗝,土地爷爷打了个嗝,是不是一个重大发现
bury vt.埋葬;掩埋;隐藏
【皮一下】被埋葬bu不r容y易
mine n.矿;矿山;矿井
我的(mine)矿(mine),都是我的
miner n.矿工
-er(人或物)
shelter n.掩蔽;掩蔽处;避身处
【谐音】烧它 在掩蔽出烧他,他就暴露了
a (great) number of 许多;大量的
title n.标题;头衔;资格
抬头 抬头就是标题
reporter n.记者
re(向后,返回)+port-(携带,承载)
【谐音】若泼他冷水,看他敢不敢打小报告
bar n.条;棒;条状物
[谐音]棒儿
damage n.&vt.损失;损害
dam-(damn-=harm伤害)+ age(状态,总称)
frighten vt.使惊吓;吓唬
fright n.惊骇,吃惊
frightened adj.受惊的;受恐吓的
frightrening adj.令人恐惧的
congratulation n.祝贺
con(与…一起)+gratulate(祝贺)【grat-(=pleasing高兴,感激)+ate(做,造成)】+tion(名词)
judge n.裁判员;法官vt.断定;判断;判决
【谐音】裁判最终决定给他“甲级“
sincerely adv.真诚的;真挚的
sincere adj.真挚的,诚实的
【谐音】心细,心细的姑娘对人都很真挚
express vt. 表示;表达n.快车;速递
ex(从…离开)press(压)=推出,表达
outline n.要点;大纲;轮廓
out(外面)+line(线)=最外面的线不正是轮廓吗
headline n.报刊的大字标题
head(头)+line(线)=头上的线上要写标题
cyclist n.骑自行车的人
cycle 自行车
2. webview远程js调用本地java实现交互怎么做?
可以,只要你是用webview打开的,那么不管事远程还是本地,都可以通过webview与app的本地java代码进行交互。没有任何区别。
1、webview必须设置支持Javascript
mWebview.getSettings().setJavaScriptEnabled(true);
2、加进一个回调的代理类javaScriptInterface,并给它一个调用的名称:ncp
mWebView.addJavascriptInterface(new JavaScriptInterface(), "ncp");final class JavaScriptInterface { public int callOnJs() { return 1000; } public void callOnJs2(String mode) { //TODO } }
3、JS页面
<script type="text/javascript"> window.onload = function(){ document.getElementById('btn_1').addEventListener('click', onBtnClick, false); var _int_value = window.ncp.callOnJs(); alert("get int from java:" + _int_value ); } function onBtnClick() { window.ncp.callOnJs2("click"); } </script>
接下来就可以调用js方法了,
1、Java调用js方法
mWebView.loadUrl("javascript:onSaveCallback()");
2、JS访问java方法
window.ncp.callOnJs2("click");
3. jquery的trigger和triggerHandler的区别示例介绍?
返回值:jquerytriggerHandler(type, [data])概述这个特别的方法将会触发指定的事件类型上所有绑定的处理函数。但不会执行浏览器默认动作,也不会产生事件冒泡。这个方法的行为表现与trigger类似,但有以下三个主要区别:* 第一,他不会触发浏览器默认事件。* 第二,只触发jQuery对象集合中第一个元素的事件处理函数。* 第三,这个方法的返回的是事件处理函数的返回值,而不是据有可链性的jQuery对象。此外,如果最开始的jQuery对象集合为空,则这个方法返回 undefined 。参数typeString要触发的事件类型data (可选)Array(可选)传递给事件处理函数的附加参数示例描述:如果你对一个focus事件执行了 .triggerHandler() ,浏览器默认动作将不会被触发,只会触发你绑定的动作。HTML 代码:jQuery 代码:$("#old").click(function(){ $("input").trigger("focus");});$("#new").click(function(){ $("input").triggerHandler("focus");});$("input").focus(function(){ $("Focused!").appendTo("body").fadeOut(1000);});返回值:jQuerytrigger(type, [data])概述在每一个匹配的元素上触发某类事件。这个函数也会导致浏览器同名的默认行为的执行。比如,如果用trigger()触发一个'submit',则同样会导致浏览器提交表单。如果要阻止这种默认行为,应返回false。你也可以触发由bind()注册的自定义事件而不限于浏览器默认事件。事件处理函数会收到一个修复的(规范化的)事件对象,但这个对象没有特定浏览器才有的属性,比如keyCode。jQuery也支持 命名空间事件。这允许你触发或者解除绑定一组特定的事件处理函数,而无需一一个指定。你可以在事件类型后面加上感叹号 ! 来只触发那些没有命名空间的事件处理函数。jQuery 1.3中新增:所有触发的事件现在会冒泡到DOM树上了。举例来说,如果你在一个段落p上触发一个事件,他首先会在这个元素上触发,其次到父元素,在到父元素的父元素,直到触发到document对象。这个事件对象有一个 .target 属性指向最开始触发这个事件的元素。你可以用 stopPropagation() 来阻止事件冒泡,或者在事件处理函数中返回false即可。事件对象构造器现在已经公开,并且你可以自行创建一个事件对象。这个事件对象可以直接传递给trigger所触发的事件处理函数。事件对象的完整属性列表可以在 jQuery.Event 的文档里找到。你可以有三种方式指定事件类型:* 你可以传递字符串型的事件名称(type参数)。* 你可以使用jQuery.Event对象。可以将数据放进这个对象,并且这个对象可以被触发的事件处理函数获取到。* 最后,你可以传递一个带有数据的字面量对象。他将被复制到真正的jQuery.Event对象上去。 注意在这种情况下你必须指定一个 type 属性。参数typeString,Event,Object一个事件对象或者要触发的事件类型data (可选)Array(可选)传递给事件处理函数的附加参数示例描述:提交第一个表单,但不用submit()jQuery 代码:$("form:first").trigger("submit")描述:给一个事件传递参数jQuery 代码:$("p").click( function (event, a, b) { // 一个普通的点击事件时,a和b是undefined类型 // 如果用下面的语句触发,那么a指向"foo",而b指向"bar"} ).trigger("click", ["foo", "bar"]);描述:下面的代码可以显示一个"Hello World"jQuery 代码:$("p").bind("myEvent", function (event, message1, message2) { alert(message1 + ' ' + message2);});$("p").trigger("myEvent", ["Hello","World!"]);
4. 为什么我的插件无法显示自身buff和目标身上的buff?
可能原因如下:插件原因,可能某些插件冲突导致角色信息不显示,禁用插件即可解决。
2.
缓存问题,一般游戏几分钟后就会正常显示角色信息了。
3.
网络问题,可能是因为网络不稳定造成卡顿或者掉线。
5. 虎牙刷屏脚本怎么弄?
let script = document.createElement("script");
script.innerHTML = `
let flag = 1;
let timer;
let i=0;
let speed=10000;
let content=null;
function fireKeyEvent(el, evtType, keyCode) {
var doc = el.ownerDocument,
win = doc.defaultView || doc.parentWindow,
evtObj;
if (doc.createEvent) {
if (win.KeyEvent) {
evtObj = doc.createEvent('KeyEvents');
evtObj.initKeyEvent(evtType, true, true, win, false, false, false, false, keyCode, 0);
}
else {
evtObj = doc.createEvent('UIEvents');
Object.defineProperty(evtObj, 'keyCode', {
get: function () { return this.keyCodeVal; }
});
Object.defineProperty(evtObj, 'which', {
get: function () { return this.keyCodeVal; }
});
evtObj.initUIEvent(evtType, true, true, win, 1);
evtObj.keyCodeVal = keyCode;
if (evtObj.keyCode !== keyCode) {
console.log("keyCode " + evtObj.keyCode + " 和 (" + evtObj.which + ") 不匹配");
}
}
el.dispatchEvent(evtObj);
}
else if (doc.createEventObject) {
evtObj = doc.createEventObject();
evtObj.keyCode = keyCode;
el.fireEvent('on' + evtType, evtObj);
}
}
window.οnkeydοwn=ev => {
if (ev.keyCode === 106) {
if (++flag % 2 === 0) {
new Promise((resolve, reject) => {
if (window.confirm("点击确定即可开启自动带节奏模式【再次点击关闭】")) {
content=window.prompt('请输入自动发送的弹幕内容【请用英文逗号分割每次需要发送的一句话】')
resolve(content)
}
}).then(r => {
const spam = () => {
timer = setInterval(() => {
const target = document.querySelector("#pub_msg_input")
let texts=r.split(",");
fireKeyEvent(target, 'keydown', 13)
if (texts.length == i) {
i = 0;
} else {
target.value = texts[i]
i++;
}
document.querySelector('#msg_send_bt').click()
}, speed);
}
spam()
});
} else {
alert("已关闭")
clearInterval(timer)
}
}
}`
document.querySelector("body").append(script);
复制上面代码
打开web浏览器进入虎牙网站登陆自己的账号
按F12或者鼠标右键审查元素
在到console下面复制上述代码再按Enter键
按*键
6. 我们为什么不用c?
要回答这个问题首先要明确题主对于写网页的定义。
一个网页往往包含前端、后端两部分。前端负责页面的呈现,后端负责数据的处理,可以大概的理解成前端是人的衣服,而后端是人的五脏六腑。
前端的话主要是采用html+css+javascript这样的组合。html有点像word里面的操作,告诉浏览器,哪里是题目,哪里是正文。然后用css去定义这些标题,正文,链接的样式。而JavaScript则让这些内容能够动起来,比如有些网站烦人的弹窗,其实就是js里的alert指令完成的。在前端部分里,html和css似乎是不可替代的,JavaScript的话,近年来有typescript等,但都没能成为主流,c++在前端在的应用似乎是没有的。
再来说后端部分,后端的语言有很多,市场占有比例最大的是应该是java,这也是java前几年就业火热的一大原因。php作为“世界上最好的语言”,则是一门专门为网页开发而设计的一门语言,近年来,python的Flask,Django等框架,也渐渐进入人们的视野,airbnb就采用了Django。
那么为什么我们不在后端里使用C++呢?这个问题其实,本身是不对的。因为我们并不是不使用,而是使用的比较少。腾讯就是以C++作为开发的主要语言。因为腾讯的产品主要偏向于通讯,而做通讯的大部分都是采用C++来开发的,产品需求决定了团队,而团队则决定了传统。还有一个原因就是,C++虽然开发效率低,但是性能会比java等好。而腾讯这样大体量的公司,是不在乎开发效率的问题的。
这也就不难理解,为什么使用C++使用的人少了。
1、开发效率低,现成的类库少,编译还存在问题,有时会觉得用别人的库,还不如自己撸一个轮子。而Python、php等则容易上手很多,甚至一星期就能做一个还过得去的网站。
2、C++语言难,因为C++比较偏向底层的开发,内存,指针,这些东西对于一个入门的开发者来说很伤脑筋,debug的过程很艰难,而且C++很灵活,其它语言的一些语言特性,你基本在C++上面都可以实现,这就使得你做一件事,有了很多条路可以选,这很容易陷入一种怪圈,写完一种方法觉得不够优雅,然后再用另一种方法,再写一次。写完C++再去写Java,你会觉得爽快很多。
7. 你遇到的前端面试题都有什么?
在当今的数字化时代,前端工程师扮演着至关重要的角色。他们负责设计和开发用户界面,使得用户能够与应用程序或网站进行互动。为了找到最出色的前端工程师,你需要了解哪些技能和知识是必备的,同时也要掌握一些面试技巧和常见的面试题。
一、前端工程师必备知识技能
1.HTML与CSS
HTML和CSS是前端工程师的基础技能。HTML(超文本标记语言)用于创建网页的结构,而CSS(层叠样式表)则用于定义网页的样式。对于一个前端工程师来说,他们需要理解HTML标记和CSS属性的工作原理,能够使用最新的版本进行高效的编码。2.JavaScript
JavaScript是现代前端开发中最重要的语言之一。它用于实现网页上的交互行为,例如动态内容、表单验证、动画效果等。前端工程师需要熟练掌握JavaScript的基础知识,包括语法、DOM操作、事件处理等,并且了解最新的ES6+规范。3.响应式设计
随着移动设备的普及,响应式设计已成为前端开发的重要部分。前端工程师需要理解响应式设计的基本原理,并能够使用相应的工具和技术,如媒体查询、弹性布局、流式布局等,来实现响应式设计。4.前端框架和库
现代前端开发中,前端框架和库的应用已经成为常态。前端工程师需要熟悉一些主流的前端框架和库,如React、Vue、Angular等。他们需要理解这些框架和库的基本概念和工作原理,包括组件化开发、状态管理、虚拟DOM等。5.版本控制
版本控制是现代软件开发中的重要工具,前端工程师需要熟悉如何使用版本控制工具,如Git。他们需要理解Git的基本原理和使用命令,能够进行代码合并、解决冲突等操作。二、前端工程师面试技巧
1.准备充分
在面试前,充分准备是必不可少的。除了熟悉前端工程师必备的知识技能外,你还需要了解公司的业务和产品。了解公司的需求可以帮助你更好地展示自己的技能和经验,同时也能表现出你对这个职位的热情。2.展示实操能力
面试不仅仅是一场理论考试,更是展示你实操能力的机会。你可以通过展示过去的项目经验、代码样本或者现场进行编码来展示自己的实际能力。这样可以让面试官更好地了解你的技能水平和实践能力。3.深入理解问题
在回答面试问题时,不要仅仅给出简单的答案。要深入理解问题背后的原理和逻辑。例如,当被问及如何实现响应式设计时,你可以详细解释不同的实现方法,并给出自己的优缺点分析。这样能表现出你的深度思考能力和对问题的理解。4.良好沟通能力
前端工程师除了技术能力外,良好的沟通能力同样重要。在面试中,你需要清晰地表达自己的想法和观点,同时也要积极倾听和理解面试官的问题和要求。一个具备良好的沟通能力的前端工程师,能够更好地与团队协作,解决技术问题。三、面试必考题目
1.请描述一下你对响应式设计的理解。答:响应式设计是一种根据设备屏幕大小和分辨率来调整网页布局的设计方法。它主要通过使用CSS媒体查询来检测设备屏幕的大小,从而应用不同的样式规则。另外,响应式设计还需要考虑流动布局、弹性布局和图片自适应等问题,以确保网页在各种设备上都能正常显示。2.请介绍一下你最近完成的一个项目,并描述一下你在该项目中扮演的角色和遇到的挑战。答:我参与了一个电商平台的项目开发。我在项目中主要负责前端开发工作,包括UI设计、交互实现和性能优化等。其中一个遇到的挑战是如何实现动态加载产品数据的功能。我使用了React的状态管理和异步渲染技术,成功解决了这个问题,使页面能够根据用户操作动态加载数据,提高了页面的加载速度和用户体验。3.请解释一下什么是组件化开发,并描述一下你在组件化开发中的实践经验。答:组件化开发是一种将页面拆分为独立的可复用组件的设计方法。在前端开发中,组件化开发可以使代码更加模块化、易于维护和复用。我在实践中,通常会将页面划分为多个组件,然后为每个组件编写独立的CSS和JavaScript代码。这样可以使代码结构更加清晰,方便后期维护和扩展功能。4.请解释一下什么是版本控制以及版本控制工具Git的使用场景和原理。答:版本控制是一种追踪和管理文件变更的工具,它可以用于代码管理、文档版本控制等场景。Git是当前最流行的版本控制工具之一,它采用的是分布式版本控制方式,每个开发者都拥有一个完整的代码库,可以在本地进行代码的修改和提交。Git的主要使用场景包括团队协作开发、代码备份恢复、分支合并等场景。通过使用Git,可以更高效地管理代码版本和协作开发,减少代码冲突和错误的风险。5.请描述一下你对性能优化的理解,并分享一下你常用的性能优化方法。答:性能优化是前端开发中非常重要的一环,它可以提高网页的加载速度和 响应速度,提升用户体验。我常用的性能优化方法包括以下几点:1.代码压缩和合并:将多个JavaScript文件合并成一个文件,压缩CSS和JavaScript代码,减少文件大小和下载时间。2.图片压缩和优化:使用压缩工具对图片进行压缩和优化,降低图片大小和加载时间。3.使用CDN加速:使用内容分发网络(CDN)将静态资源缓存到各地的服务器上,加速用户下载速度。4.缓存优化:合理使用浏览器缓存,将静态资源缓存到用户的浏览器上,减少每次下载的时间。5.代码分析:通过使用性能分析工具,找出代码中的性能瓶颈,并进行优化。例如,通过使用虚拟滚动、懒加载等技术来提高网页的性能。通过这些方法,我可以有效地提高网页的加载速度和响应速度,提升用户体验。6.请解释一下JavaScript中的闭包是什么以及它的应用场景。答:闭包是指一个函数与其所引用的变量集合之间的绑定关系。它允许一个函数在执行时访问并使用其外部函数中定义的变量,即使外部函数已经返回。在JavaScript中,每个函数都可以产生一个闭包,闭包可以用来实现一些特定的功能,例如模块化、私有变量和回调函数等。应用场景举例:模块化:通过闭包定义一个私有的变量或函数,避免全局变量污染,同时可以对外暴露一些接口来实现模块化。私有变量:通过闭包定义一个私有的变量或函数,在外部无法直接访问,只能通过闭包中的公共接口来访问。回调函数:通过闭包将外部的变量传递给内部的函数,使得内部的函数可以访问并修改外部的变量。总之,闭包是一种强大的功能,它可以实现许多常见的编程需求,同时也可以提高代码的可维护性和可复用性。在面试前端工程师时,面试官通常会通过考察候选人的知识技能、实操能力以及解决问题的能力来判断其是否符合公司的要求。通过深入理解问题、良好协作开发,减少代码冲突和错误的风险。7.请描述一下你对性能优化的理解,并分享一下你常用的性能优化方法。答:性能优化是前端开发中非常重要的一环,它可以提高网页的加载速度和响应速度,提升用户体验。我常用的性能优化方法包括以下几点:1.代码压缩和合并:将多个JavaScript文件合并成一个文件,压缩CSS和JavaScript代码,减少文件大小和下载时间。2.图片压缩和优化:使用压缩工具对图片进行压缩和优化,降低图片大小和加载时间。3.使用CDN加速:使用内容分发网络(CDN)将静态资源缓存到各地的服务器上,加速用户下载速度。4.缓存优化:合理使用浏览器缓存,将静态资源缓存到用户的浏览器上,减少每次下载的时间。5.代码分析:通过使用性能分析工具,找出代码中的性能瓶颈,并进行优化。例如,通过使用虚拟滚动、懒加载等技术来提高网页的性能。通过这些方法,我可以有效地提高网页的加载速度和响应速度,提升用户体验。8.请解释一下JavaScript中的闭包是什么以及它的应用场景。答:闭包是指一个函数与其所引用的变量集合之间的绑定关系。它允许一个函数在执行时访问并使用其外部函数中定义的变量,即使外部函数已经返回。在JavaScript中,每个函数都可以产生一个闭包,闭包可以用来实现一些特定的功能,例如模块化、私有变量和回调函数等。应用场景举例:模块化:通过闭包定义一个私有的变量或函数,避免全局变量污染,同时可以对外暴露一些接口来实现模块化。私有变量:通过闭包定义一个私有的变量或函数,在外部无法直接访问,只能通过闭包中的公共接口来访问。回调函数:通过闭包将外部的变量传递给内部的函数,使得内部的函数可以访问并修改外部的变量。总之,闭包是一种强大的功能,它可以实现许多常见的编程需求,同时也可以提高代码的可维护性和可复用性。在面试前端工程师时,面试官通常会通过考察候选人的知识技能、实操能力以及解决问题的能力来判断其是否符合公司的要求。通过深入理解问题、良好的沟通能力、实际项目经验和解决问题的能力,你可以更好地展示自己的专业素养和综合能力,从而在面试中脱颖而出。四、面试中的注意事项
1.态度积极:在面试中要保持积极的态度,展示出你对工作的热情和渴望。回答问题时要积极思考,给出具体的解决方案和思路,不要过于笼统或简单地回答问题。2.自信表达:在面试中要保持自信,清晰地表达自己的想法和观点。对于不确定的问题,可以提出自己的猜测和推断,但要避免过于夸张或虚假的表述。3.展示自己的优势:在面试中要展示自己的优势和特长,例如技术能力、项目经验、沟通能力等。可以通过具体的案例和数据来证明自己的价值,让面试官对你的能力有更深刻的认识。4.谦虚诚恳:在面试中要保持谦虚诚恳的态度,尊重面试官的意见和决策。对于自己的不足之处,要诚实地承认,并表达出自己愿意学习和改进的态度。5.提前准备:在面试前要提前了解公司的背景、业务和产品,了解该公司对前端工程师的要求和期望。可以根据这些信息来准备自己的简历和面试材料,更好地展示自己的优势。五、总结
前端工程师是数字化时代的核心角色之一,他们在网页设计、交互实现、性能优化等方面发挥着重要的作用。在面试前端工程师时,需要考察其知识技能、实操能力、解决问题能力以及沟通能力等多方面的素质。通过充分的准备、深入理解问题和良好的沟通表达,你可以更好地展示自己的能力和潜力,从而在面试中获得成功。本文分享自华为云社区《【云驻共创】想面试前端工程师,必须掌握哪些知识和技能?-云社区-华为云
》,作者: 可以交个朋友。点击下方,第一时间了解华为云新鲜技术~华为云博客_大数据博客_AI博客_云计算博客_开发者中心-华为云