00:00
再往下呢,咱们来看一看谁的这个叫做运算符,这个运算符啊,这块太多了啊。我们啊,就讲一个。特别多,加减乘除,加加减减。对吧,求余数。诶,你们在佳话里边有没有学过一套那个运算符。啊,那个什么问号冒号,这叫什么运算符啊,三步运算符是不是。还有什么未运算?对吧,直接操作二进制的。这个你们可能没有对吧,但是。运算符里边有没有可以直接操作二进制的,这些运算符有没有有啊,未运算吗?未运算。微运算在实际开发中用的多不多不多啊,很少,几乎不用啊。但是有人考。
01:05
对吧,考什么呀?二怎么快速的变成八二怎么快速的变成八。左移两位,二进制左移两位。是吧?二进制这块呢,也有一定了解啊。12486嘛,三十二六十四是不是一百二十八一百十八。然后如果是现在要将二变成八。对吧,二要变成八,那你二现在是这个是一对吧,这是一就是210。对不对,000000,整个这个东西是不是就是二。
02:06
对吧,二要变成八,你把这个东西左移一位,然后呢,再移一位,这样一不就到这了吗?这是零,这是零,这是零啊。这不就是八吗?把这个二进制位左移两位。就是棒。据说这个是微软的面试题,微软面试题二如何快速变成八,你不要搞到二乘以四变成八,就二乘四等于八,对呀,对吧,就就有的,就很纳闷这是出的什么题,这是。二乘四不得八吗?或者二加六不是八吗?对吧,哎,你你你放心啊,这个题肯定没有那么简单,你到考试的时候,你你自然而然就会想到这个东西,不可能这么简单是吧?哎,然后于是乎呢,如果有计算机理论基础的同学,我前提说了啊,如果你是有计算机理论基础的同学,就说你是科班出身。
03:14
你可能会往哪想二进制,对吧,但是如果您不压根不是科班出身,以前根本跟这个行业不挂钩,你把头想破,你都不会想到二进制上,但只要是想到二进制上,这个问题基本上就能解决,对吧。但关键的问题就是能不能想到这个上面,并不是说二进制有多难,对吧。所以这个这个像这种题目啊,就是往往像这种这个。大公司。国企是吧,他招人的话,一般情况下他招什么招什么,他一般招这个。他考哪儿啊,考这个比较多,就考这个什么,你做过这个项目,那项目那项目这都不看,就看你加va功底咋样,你Java功底行那就行,Java功底不行,我觉得你没有什么塑造价值,他觉得。
04:13
对,他就他就这么想,他大公司都这样想。但有一些规模不是很大的一些小公司,他的目的只有一个,你来了之后能给我干活就行,所以说你去一些小公司面试啊,他基本上就是上来不问你加Y,问你啥项目,你做哪了。你做的哪个模块。做这个模块用了多长时间?遇到了什么困难,怎么解决呢?他就这样三两个问题就问出来,你到底有没有写这个项目?他觉得你,诶,你写过这个项目,行,你到我团队里边,我这个活你肯定干得了,这就是说这个小的团队一般都是这样。啊。
05:00
大公司不一样。他问偏原理的比较多一些。他就可着这么几个问啊,这个问一问。他问你GM内存结构?啊,这是第一个问题,第二个问题,Java内存,Java虚拟机的内存模型。Java memory model。内存模型,这是两个东西啊。一个叫内存结构,叫内存模型。还有问多线程吧,哎,多成。还会问你什么呀,优化。就是你的搜狗怎么写效率最高?你有什么招儿可以优化?对。他问这些,有的可着设计模式问。
06:00
那别的问就问你设计模式。什么单利模式啊。是吧,还有一些别的什么工厂模式啊,装饰模式,动态代理就是代理模式是吧,还有责任链模式,门面模式,适配器模式特别多。问你这些?还问你开发原则?搞得特别。是吧,开发原则你们知道一个叫OCP。开闭。对吧,对扩展开放,对修改关闭吗?OCP。嗯。那运算符这一块呢,我说了,咱们就讲一个啊,就讲一个别的呢,都和Java一样,你往Java那块想,Java你要会这个就会了,但是VO在Java里边没有吧啊。
07:01
这是很有意思的一个运算符啊。来我们新建一个H2020。020。我们叫做GS的VO的运算符。这个运算符呢?它是干什么的呢?我先来给大家一个需求。啊。对,我给出你这个需求之后呢。要解决这个需求,你就得用什么。你就得用的运算符啊,我先去讲一下这个需求行吧。这不是换行吗?眼熟吧,换行啊。好,反正就是换行呗,因为顶部啊。
08:02
下边我再来几个结束的好,在这,在这,我要干什么呢?我需要什么呢?我需要这么一个东西啊。需要在这记。保留住超链接的什么样式,同时用户点击该超链接的时候页面,呃,同时用户点击该超链接的时候执行一段JS代码。但页面不能什么跳转,就我要做到这样一个功能。什么功能既保留住超链接的样式,超链接什么样式啊?有下划线吧,鼠标停上去是不是变成小手?
09:05
同时用户点击该超链接的时候,执行一段什么JS代码,但页面还不能,但页面还不能跳转啊。好,比如说我们先把HR删掉,删掉之后呢,我们在这干什么呢?打开这个firefox,打开这是页面顶部吧。页面都拖到最后,大家看最后这个位置是不是有这么一段话,既保留着超链接样式,同时用户点击该超链接的时候执行一段JS代码,但页面还不能跳转。巴这么一个东西。鼠标停到这儿。变成小手了吗?所以现在我们怎么变成小手啊,加什么就行,加这个是不是就变成小手了。有下划线了吗?所以既保留住串联样式,第一个要求我们是不是已经做到了,第二个要求是同时用户点击该超链接的时候执行一段GS代码吧,所以我在这个位置我可以加一个什么on click,这个倒好说,点击的时候去执行一段JS代码吧,好。
10:14
那接下来呢,我们就来这儿呢,刷新之后呢,我就点一下,点完之后你看有超链接钥匙,点完之后也执行一段JS代码,但是我点完确定之后,你看你看啊,最后有一句话,但页面还不能跳转,你看啊点确定。页面跳过去了。是吧,所以我们只完成了前半段,后面半段是不是。不能跳转,不能跳转,最后是不是还是跳转了,对吧,他为什么会跳转,因为这个位置有路径。听懂了吗?如果双引号里边什么也没写,就代表当前路径。
11:05
他最初的时候是在这个页面上,你点完这个超链接就还跳到这,你懂什么意思吗。所以它的最后的展现效果是回页面顶部了,实际上并不是说回页面顶部了。是,他又跳到了个新页面,那个新页面是他自己。我点他,我点完这个确定是不是就走了,是不是跳到下个页面了,下个页面是不是当前路径,当前路径是不是还是这个文件,所以现在是不是就把这个页面重新展示展示一下,这个我不希望达到这个效果,我希望达到的效果是我点完你有超链接的样式,我点完之后呢,你也去执行程序,但是我不允许你跳。懂吧,就不允许你跳。怎么办?需要用它。
12:01
忘了给你算数。就是说我们把这个路径啊,把这个路径让他怎么着消失。这个路径让它消失,怎么让他消失呢?忘括号。零。有的老师必须是零吗?能不能别的值可以可以啊,你写别的也行,随便啊,这个值无所谓。Y的这个运算符的运算原理是什么呢?是执行小括号当中的什么表达式,但不返回任何结果。全是不好理解的地方是吧,VO。
13:03
运算符的语法怎么写?Y括号跟什么表达式?运算原理是执行什么表达式?但不返回任何结果。您这块如果执行结束之后,假如说返回了一个结果是A。它就会跳到A还是会跳页面吗?如果你执行结束之后的返回结果,什么也不返回。有同学说老师什么也不返回,是不是就是这个不对,这个叫表示返回什么空字符串懂吗?Function有一个函数,这个函数在这块return一个双引号,懂什么意思吗?
14:05
这个什么叫返回?孔子串。而我这个VO连空字符串都不返回,你懂吗?如果我执行结束之后,返回一个空字符串的话,那这个整体是不是还是一个空字符串,那空字符串是不是还得跳,所以这个wide就是什么也不返回,那有的老师他到底返回啥啥也不返,有老师那他返回是不是none啊错,返回none这个位置就是none,这个是none的话,他还会跳。有的老师他反过来是不是安迪find的,安迪办的,他还得跳,就这个位置VO他绝了啊,特别牛,牛就牛在哪,他不返回任何东西,不返回任何东西就代表你双引号里边。
15:00
什么也没,也不是这个啊。也不是这个。这个代表有东西吗?有什么东西啊,当前路径。Void,但是你void还不能直接这么写,你如果这么写void,它这个超链接就会认为你后边这个VOID是一个什么路径。懂什么意思吗?他就走了,你还需要在前面加一个加va script冒号来告诉人家这个h ref这个属性后面你是一段什么代码啊,GS代码。你不能这么干啊,这么干他会认为这是个什么路径,就跳过去了,你写javascript冒号,Javascript冒号括号零,其中javascript冒号作用是告诉浏览器后面是一段什么JS代码。
16:18
以下程序的什么javascript冒号是不能什么省略的,不能省略。好,那这样的话。就可以了。达到了我们这个效果,大家看啊,这个页面拉到最底端。有没有超链接的样式?鼠标变成小手了吧,点完有没有执行代码,执行完代码他还不动,你看。他不动,他是不是没有跳啊,他为什么没有跳,因为他没有地方可以跳,他为什么没有地方可以跳,因为没有路径啊。
17:06
为啥没有路径的不返回任何结果?对。你们上网应该见过鼠标停到这,浏览器左下角显示一个javascript冒号高一零,应该见过这种东西,你看浏览器左下角。你们上网的时候应该见过,有的时候鼠标停留到某一个超链接上之后,它会显示这么一个东西。有的啊,你以后上网你注意一下,你看有没有这鼠标停到这的时候诶。左下角是个家族抱围的零。他的意思是什么意思,就是不跳转不跳转,不跳转但执行代码,而且还有超链接的样式,点完确定它不走,就这个我说一下VO运算符只有这一个用法,我写了N多电程序啊。
18:02
VO的运算符我只在这一个地方用过,别的地方我没用过。当然,他肯定会有别的用处啊。把return for写到on click里面,和这个有区别吗?Uncle click。Return for。你这个returnfor有用没用?不是你说了算。对吧。是不是?他的意思是说on keydown,在这一块回调函数执行过程当中,我们return一个false吧,这个return false。他这个返回到底有没有意义?
19:04
那就要看是谁调了一个方法。浏览器是不是负责调这个方法。浏览器负责调这个方法,他咱们返回去之后,人家到底接收没接收。是人家浏览器说了算吧。对吧,所以这块返回不返回。跟这个有啥关系呀。就不跳转这个例子。这个也不一样,不是一回事,这根本就不是一回事。不是一回事,这个同学的意思什么意思,你知道吧,他的意思是说这个void这是个运算符,但是呢,他说这个void是一个什么函数。对吧,然后这个函数是不是最后执行结束之后return一个false,我再说一下不是啊,如果这个地方最后结果return false之后,整体就变成了一个false,这个false只要在双引号里边放着,它就是一个路径,它会跳。
20:18
不是return false啊,你return false就代表你有返回值,我这个就压根就连返回,连返回都没有,返回不会返回。就等于说白了,这个的出现,把这个双引号给彻底废了。就VO的括号零加什冒号VO0括起来是吧,把这废弃废弃掉了,把这个双引号的废弃掉了,把这个路径给它废弃掉了,没有了啊,当然你以后开发啊,遇到这种情况就是说你诶既可以保留住样式,又点它又执行一段代码,而且执行完还不跳。你能想起来忘零就行,这个零呢,咱们写成100行吗?我们看一下啊。Yeah。
21:08
一样吧,跟后边这个没有关系啊。于是。不写,我们看看有没有语法错误啊,他要执行表达式,要缺失表达式的话,这个报运算看能不能用。什么也不写。行吧,我们啊,反正我们一般都这么写啊,一般都是这样写。好的,这样的话咱们刷新一下,刷新之后F12掉出来,掉出来之后呢,我点这个呗。错。叫期望的吧。表达式。是不是?期望的表达式。
22:01
我点上边儿那个啊。没错。没有语法错误还不行。他有语法错误,虽然可能不耽误他执行对吧?啊,但是这块呢,这个语法还是有问题啊得写。不能控制不写,控制不写还不写。括号啊,这个小括号当中必须有什么表达式。好了,那这样的话,这个VO的运算符咱们就说到这了,各位啊。
我来说两句