首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS 原生面经从初级到高级【1.5W

前言 是时候撸一波 JS 基础啦,撸熟了,银十速拿 offer; 本文不从传统的问答方式梳理,而是从知识维度梳理,以便形成知识网络 包括函数,数组,对象,数据结构,算法,设计模式和 http. 1....函数的3种定义方法 1.1.1 函数声明 //ES5 function getSum(){} function (){}//匿名函数 //ES6 ()=>{}//如果{}内容只有一行{}和return关键可省..., 1.1.2 函数表达式(函数字面量) //ES5 var sum=function(){} //ES6 let sum=()=>{}//如果{}内容只有一行{}和return关键可省, 1.1.3...个特性: configurable(可配置),enumerable(可枚举),writable(可修改),value(属性值) 2.访问器属性2个特性: get(获取),set(设置) 3.内部属性 JavaScript...为单位),min-fresh(最小更新时间),max-age=3600 If-None-Match 上次请求响应头返回的 etag 值响应头增加 Cache-Control,表示所有的缓存机制是否可以缓存哪种类型

1K20
您找到你想要的搜索结果了吗?
是的
没有找到

JS 3D 模型

这是一个简单的 JS 3D 模型,能跑在包括 IE6 的所有浏览器上,结合一下 tween 缓动算法,理论上已经可以完美模拟像 http://www.cu3ox.com/ 这个网站上方 banner 的各种变换效果了...介绍一下实现细节,矢量绘图仍然用的是 Raphael 库,Raphael 我在《如何用 JS 实现 3D ×××效果》这篇文章里有过介绍。...长方体类 Cuboid 为了实现长方体,本例中又加了三个重要的辅助类,他们是点类(Point)、线类(Line)和面类(Face),一个长方体六个面确定,一个面四条边线确定,一条边线两个线头点确定...这里涉及一个问题,离观察者越的物体会挡住或部分挡住离得的物体,同样的,在同一个物体上的多个面,离观察者越的面会挡住或部分挡住离得的面。...画家算法里有多种实现,最常见的也最简单的是深度排序,本例用的也是深度排序,首先令每个面都具有中心点,再根据中心点的 z 轴坐标大到小对面进行排序,排完序后的面即是离观察者的一个顺序,最后再逐个面进行渲染即可

3K20

X86指令格式(操作码列和指令列解释)

,地址 r/m16 给出 FF /2 CALL r/m32 绝对间接近调用,地址 r/m32 给出 9A cd CALL ptr16:16 绝对调用,地址操作数给出 9A cp CALL ptr16...:32 绝对调用,地址操作数给出 FF /3 CALL m16:16 绝对间接调用,地址 m16:16 给出 FF /3 CALL m16:32 绝对间接调用,地址 m16:32 给出 /...JMP ptr16:32 绝对跳转,地址操作数给出 FF /5 JMP m16:16 绝对间接跳转,地址 m16:16 给出 FF /5 JMP m16:32 绝对间接跳转,地址 m16:...r/m16 - 操作数大小属性等于 16 位的指令使用的通用寄存器或内存操作数。通用寄存器有:AX、BX、CX、DX、SP、BP、SI DI。内存的内容位于有效地址计算提供的地址。...m16int、m32int、m64int - 分别是内存中的、短整型长整型浮点操作数。 ST 或 ST(0) - FPU 寄存器堆栈的栈顶元素。

32.9K223

文献精读-植物地上组织维持表达斑图稳态的跷跷板模型

图片那这些原基因此通过后续的发育的器官组织不同,也划分成了不同的区域,主要可以划分成轴域和轴域。图片在这些调控到轴域和轴域的基因是非常多的,同时是相互抑制的。...图片那控制轴域的基因还有经典的WUS-CLV基因,还有在轴域中抑制KAN1的表达,进而使得MICRO165MICRO166表达上升,在轴域不断表达。...图片同时伴随着原基的不断发育,pin值最大的表达位置也发生移动,并且出现了第二原基,而且这个时候前面已经提到的轴域的基因KAN1 、REV的表达区域也趋于稳定,因此作者猜想生长素的不断积累会诱导这个轴界面的分离...当MP基因共同调控KAN1REV基因的时候,使得出现与实验一致的植物表型。基于以上,作者获得了适合原基轴域表达模式的模型图。...图片MP基因的表达位置基于以上的研究结果,作者发现在调控轴域的基因种,mp基因起到了介导的作用,因此猜测是否MP基因与KAN1REV基因是不是直接调控的。

32530

汇编指令

汇编指令: JO、JNO、JB、JNB、JE、JNE、JBE、JA、JS、JNS、JP、JNP、JL、JNL、JNG、JG、JCXZ、JECXZ、JMP、JMPE 名称 功能 操作数 操作码 模数 寄存器...无 无 无 10 无 无 8086 无 无 JBE 不高于跳转 短 $76 无 无 无 无 10 无 无 8086 无 无 JA 高于跳转 短 $77 无 无 无 无 10 无 无 8086 无 无 JS...无 无 10 无 无 386 无 $66 JS 负号跳转 $0F88 无 无 无 无 10 无 无 386 无 $66 JNS 非负跳转 $0F89 无 无 无 无 10 无 无 386 无...不高于跳转 $0F86 无 无 无 无 10 无 无 386 $66 无 JA 高于跳转 $0F87 无 无 无 无 10 无 无 386 $66 无 JS 负号跳转 $0F88 无 无...$E9 无 无 无 无 10 无 无 8086 无 $66 JMP 跳转 $E9 无 无 无 无 10 无 无 386 $66 无 JMP 跳转 (数段址:)偏移16 $EA 无 无 无 无 10

1.4K10

【Three.js基础】创建场景、渲染场景、创建轨道控制器

Three.js 是一款 WebGL 框架,其WebGL 的 API 接口基础上又进行的一层封装。西班牙巴塞罗那的程序员 Ricardo Cabbello Miguel 所开发,人称Mr.doob。...50长宽比(aspect ratio):物体的宽/物体的高,比如(window.innerWidth / window.innerHeight),通常是使用画布的宽/画布的高,默认值是1(正方形画布)截面...(near plane):摄像机的端面,默认值是0.1,其有效值范围是0到当前摄像机far plane(远端面)的值之间。...截面(far):摄像机的远端面,默认值是2000。 当物体某些部分比摄像机的截面或者比截面的时候,该这些部分将不会被渲染到场景中。...该值必须大于near plane(摄像机视锥体端面)的值。

29540

基于 Threejs 的 web 3D 开发入门

导语 随着软硬件的发展,在PC和移动端浏览器上进行web 3D开发的条件已经基本成熟了,出现了不少js 3D库,Threejs是js 3D库中的佼佼者。...,即width/height,通常设为画布的宽高比,near和far分别是平面和平面与相机的距离。...假如透视投影相机的平面的大小为axb,平面大小为2ax2b,则一张axb大小的纸放在平面上,投影到画布时刚好铺满整张画布;放到平面上则只能占据画布面积的1/4(平面的面积是平面的4倍)。...正是因为透视投影相机的示景体小远大,才会导致同样一个物品放在不同位置显示出大远小的效果。而正交投影相机因为远近平面大小一样,所以同一个物品距离相机的远近不影响物体在画布上投影展示的大小。...我刚好经历过浏览器2D数据可视化绘图flash向JS转变的过程(2012年前后),相信随着软硬件性能的提升和网络速度的提升,web 3D应用也会慢慢的推广使用起来。 文章来自:小时光茶社 公众号

15.1K43

依图要修AI语音双学位,左手摸底考第一名成绩单,右手开放平台方案

依图在具体表现中,主要围绕第三方的近场口音测试集、近场安静聊天测试集、语音节目测试集、电话测试集、场测试集,并拿出了错率(CER)几乎全部在15%以下的成绩。...从技术性能来说,错率曲线抖动越小,算法的场景通用性越好。 ? 综合各场景测试的结果,业界主流算法中,依图和讯飞的算法错率抖动相对较小。...在认定大趋势后,依图希望先在语音识别方面拿出产品,利益切身的开发者评价。...场情况下,目前效果提升空间还很大,需要在语音识别的全链路上优化场识别的性能,即麦克风阵列的设计、信号处理、声学模型针对性的为场优化。 ?...也欢迎你去试一试,然后分享你的结果看法。 最后的最后补充一句,如今的AI公司依图,已是一家估值30亿美元,涉足视觉、芯片和语音的公司。 — 完 —

59220

(九)汇编语言——转义指令的原理

但是呢,我们使用jmp指令的话,需要给出两种信息:第一就是转移的目的地址,其次就是转移的距离,具体分为以下三种: 段间转移(转移):jmp 2000:1000 段内短转移:jmp short 标号...也就是说,转移指令的机器码是包含了CS和IP的。 段内转移 段内转移主要分为两种,一个是短转移,一个就是转移,接下来我们来介绍一下。...指明此处的位移为16位位移,进行的是段内转移; 16位位移的范围为-32769~32767,用补码表示; 16位位移编译程序在编译时算出。...段内转移 jmp word ptr 内存单元地址,就是从内存单元地址处开始存放着一个,是转移的目的偏移地址。...段间转移 jmp dword ptr 内存单元地址,就是从内存单元地址处开始存放着两个字,高地址处的是转移的目的段地址,低地址处是转移的目的偏移地址。

47120

一个大脑,两个世界

这最终将成为解释多巴胺和爱情的一个关键概念,尽管它听起来跟轰轰烈烈的爱情风马牛不相。 佩蒂格鲁发现,大脑将外部世界分为两个独立的区域来管理,即“体的”和“体的”——简单来说就是远近两个区域。...体空间包括手臂可之处,在此范围内的事物你可以马上用手控制,这是一个真实的世界。...体空间中的事物的定义就是如此:得到它们需要努力,需要花时间,而且大多数情况下需要做计划。相反,体空间的事物是可以在当下体验的。...我们也因此得出了一个神经化学的结论:大脑在体空间的工作方式,与体空间截然不同。人类心智如此设计,让大脑以这种方式区分事物,是有一定道理的:它用一个体系来处理你拥有的,用另一个体系来处理你没有的。...这个分类非常基础,于是大脑进化出了不同的信号通路和化学物质来处理体空间和体空间。当你向下看时,你就看向了体空间,此时大脑被处理当下体验的化学物质支配着。

24830

模板阴影理论概述

由于4个不同方向的阴影投射,应该至少有4个阴影的游戏角色在地板上形成十。在这里只选择1个光源将使场景看起来很奇怪。...视锥体需要剪切距离和的剪切距离,用于创建剪辑平面和剪辑平面。深度通过和深度失败技术都受到视锥截面问题的困扰。如图13所示,深度传递技术在与相邻剪辑平面交叉之后剪切阴影体积时会遇到错误。...因此,当平面距离达到无限极限时,我们得到以下透视投影矩阵: (2) 公式(2)定义了从平面到无穷平面延伸的透视投影图。...说我们原来的夹子飞机是在0.1米,的夹子是在100米。该范围对应于[-1.0,1.0]的深度范围。然后我们将平面距离延伸到无限。...实际上,深度夹紧延伸,NV_depth_clamp特别添加到Nvidia的GeForce3以上显卡,以解决阴影卷的平面裁剪问题。

1.1K30

NASM Overview

resb: reserve byte 指令 功能 resb 以字节为单位声明一段未初始化数据 resw 以为单位声明一段未初始化数据 resd 以双字节为单位声明一段未初始化数据 resq 以四为单位声明一段未初始化数据...在 8086 中按照转移行为可分为: 段内转移:只修改 IP 短转移:IP 修改范围为 -128~127(2^7-1) 转移:IP 修改范围为 -32768~32767(2^15-1) 段间转移(转移...可以只修改 IP,也可以同时修改 CS 和 IP 使用 jmp 指令时需要提供两种信息: 转移的目的地址 转移类型(段间转移(转移)、段内短转移、段内转移) 语法 转移目的地址在指令中 语法:jmp...位位移范围是 -32768~32767,编译程序在编译时计算 语法:jmp far ptr 作用:转移到标签处执行命令 描述:这种格式的 jmp 指令实现的是段间转移(即转移),far...js & jns | 正负判断 js:如果标志位 SF = 1,则跳转到指定地址。 jns:如果标志位 SF = 0,则跳转到指定地址。

2.8K20

李宏毅强化学习完整笔记!开源项目《LeeDeepRL-Notes》发布

Datawhale开源 核心贡献者:王琦、杨逸、江季 提起李宏毅老师,熟悉强化学习的读者朋友一定不会陌生。很多人选择的强化学习入门学习材料都是李宏毅老师的台大公开课视频。...此外,我们还补充了马尔可夫决策过程、Q-learning、Sarsa、REINFORCE 等强化学习常见的算法概念。...「策略梯度」课程中的 PPT,解释了策略梯度的过程 「端策略优化算法」课程中的 PPT,展示了重要性采样的问题 李宏毅老师的《深度强化学习》是强化学习领域经典的中文教程之一。...《LeeDeepRL-Notes》李宏毅深度强化学习笔记 LeeDeepRL-Notes 是 Datawhale 自《李宏毅机器学习笔记》后的又一开源学习项目,团队成员王琦、杨毅、江季历时四个月协作而成...5.a 关键让你快速 get 到文章的要点 在每章教程的后面,我们都会结合每章的内容,将定义、具体算法、专业名词等关键和知识点,使用最短、最精确且最白话的方式总结,供大家吸收与巩固。

65110

逐梦启航,2019年度犀牛鸟精英人才入选者开启研究新征程

2019年是犀牛鸟精英人才培养计划发起的第三年,截至目前,项目共收到来自全球100余所高校研究机构400名优秀学生申请,培养海内外顶尖科研人才80人,多项科研成果已在真实场景数据中验证、转化,并发表于...var first_sceen__time = (+new Date());if ("" == 1 && document.getElementById('js_content')) { document.getElementById...('js_content').addEventListener("selectstart",function(e){ e.preventDefault(); }); } (function(){ if...当前共 发送 已发送 朋友将在看一看看到 确定 写下你的想法......取消 发布到看一看 确定 最多200,当前共 发送中 微信扫一扫 关注该公众号 微信扫一扫 使用小程序 即将打开""小程序 取消 打开

45140
领券