知识点(不断更新)

RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具

 

2 js中match函数方法是使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回。使用方法:

stringObj.match(rgExp)

 

JavaScript 解释器中存在一种变量声明被提升(hoisting)的机制,也就是说变量
(函数)的声明会被提升到作用域的最前面,即使写代码的时候是写在最后面,也还是
会被提升至最前面

只是声明的提升,但是不赋值,比如console.log(a);var a=1;等价于var a;console.log(a); a=1;

 

4 npmjs.org:node 的模块包管理 

 

5 子网掩码:最为简单的理解就是两台计算机各自的IP地址与子网掩码进行AND运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。就这么简单

 

6 TCP: 负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。

 

7 Cookies:收集访问者的信息,Hosts,dns是把我们送到某个地方(主机或者服务器)去,网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密),Cookie 的用途之一是存储用户在特定网站上的密码和 ID。另外,也用于存储起始页的首选项

 

8  cname记录(别名):

主机名:host.abcd.com

别名:一台主机可以提供多种服务,比如http服务和mail服务。

访问http服务就可以使用域名:www.abcd.com

访问mail服务就可以使用域名:mail.abcd.com

这里的域名其实都同时指向主机名: host.abcd.com,这些指向主机名的域名就叫做别名。当主机的ip地址改变的时候,只需要更改主机的主机名的指向就可以了

Ps:为了seo,绝大部分网站都做了301重定向,就是网址加不加www都指向同一个地

 

9 复制到剪贴板,兼容性比较好的方法:

html里面用textarea

Idname=getelementbyId();

Idname.select();

document.execCommand("Copy"); 

  alert("已复制好,可贴粘。");

 

10  API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节

 

11 jq选择器的读取方式是从左到右,css选择器的读取方式是从右到左,这样性能更好

如div p .aaa,如果先遍历所有的div一级一级下去然后找到.aaa,发现没有,又要从头遍历回去再找,浪费性能,所以先遍历所以.aaa,然后冒泡上去找p,再找div,有的话则收录,没有就不收录。

 

12 <object>和<embed>标签的区别:

<object>:定义一个嵌入的对象。请使用此元素向您的 XHTML 页面添加多媒体。此元素允许您规定插入 HTML 文档中的对象的数据和参数,以及可用来显示和操作数据的代码。

<object> 标签用于包含对象,比如图像、音频、视频、Java applets、ActiveX、PDF 以及 Flash

网页中的object其实就是一个COM组件(概念可以网上查一下),classid就是这个COM组件在系统中注册的一个ID值,有了这个ID值系统才能找到这个COM组件对应的DLL(DLL文件又称“应用程序拓展”,是软件文件类型)文件,就像普通的软件用其他DLL时需要一个路径一样。而后面的codebase一般是用来下载和更新组件用的,比如浏览某个网页时,发现您的机器上没有安装这个组件,就会去codebase的地方下载组件,有了新的版本也会提示您安装新版本。

param标签为包含它的<object>标签提供参数,param元素允许您为插入XHTML文档的对象规定run-time设置

<embed> :标签定义嵌入的内容,比如插件

区别:两者都是用来播放多媒体文件的对象,object元素用于IE浏览器,embed元素用于非IE浏览器,为了保证兼容性,通常我们同时使用两个元素,浏览器会自动忽略它不支持的标签。同时使用两个元素时,应该把<embed>标签放在<object>标签的内部

 

13 单页应用: 整个webapp就一个html文件,里面的各个功能页面是javascript通过hash,或者history api来进行路由,并通过ajax拉取数据来实现响应功能。

APP (应用程序,Application的缩写)

 

 

14 如果给定表示 DOM 元素集合的 jQuery 对象,.closest() 方法允许我们检索 DOM 树中的这些元素以及它们的祖先元素,并用匹配元素构造新的 jQuery 对象。.parents() 和 .closest() 方法类似,它们都沿 DOM 树向上遍历。两者之间的差异尽管微妙,却很重要:

 

15 closest() :

从当前元素开始,沿 DOM 树向上遍历,直到找到已应用选择器的一个匹配为止,返回包含零个或一个元素的 jQuery 对象

 parents():从父元素开始,沿 DOM 树向上遍历,直到文档的根元素为止,将每个祖先元素添加到一个临时的集合;如果应用了选择器,则会基于该选择器对这个集合进行筛选

返回包含零个、一个或多个元素的 jQuery 对象

 

16 普通打印与web打印区别

普通打印:打印看得见的数据文档,所见即所得(打印表面上的内容)

web打印:能打印不显示的内容,传统打印控件总是“页面看到什么才能打印什么”,缺乏灵活性,使打印略显呆板。而使用lodop则可以做到“只看想看的、打印想打的”,不仅开发人员可以自由设置打印输出内容,用户还可对打印内容进行一系列调整,比如打印背景,打印内容排版,哪个位置打印什么内容

打印编程接口,介于浏览器和打印设备之间,是个通道和桥梁,几乎能想到的打印控制事项都能做到

第三方控件将打印的参数和方法封装成对象,在页面中可以方便的直接调用,例如ScriptX.cab,eprint.cab 都是这种类型的控件。可以直接用代码实现web打印页眉页脚的设置,web打印纸张的绑定,web打印边距的设置,web打印预览,直接web打印

 

17 请问什么是属于c/s模式下咱们常见的程序,比如qq类的即时聊天,还有什么其他常见的?

答:c/s模式,是必须在自己的计算机上安装专门的程序才可以使用的,例如你说的qq类的即时聊天,还有例如outlook、foxmail等邮件收发程序

 

18 什么属于b/s模式下咱们常见的应用,是现在的什么人人网,新浪网,土豆网,邮箱的网站,淘宝网,猫扑网等等网站都是属于b/s模式的应用吗

答:b/s模式,是直接使用浏览器就能使用的应用,各类网站应该算是一种典型的b/s模式的应用


19 RequireJS 遵循的是 AMD(异步模块定义)规范,SeaJS 遵循的是 CMD (通用模块定义)规范


20 发起几次 http get 请求就看发起查询了几个域名,同一个域名下的内容算发起一次请求


21 相对路径是看它最后在哪个文件里(它被放在哪个完整的文件里引用的)的(html,css,js)相对路径

22 域名解析也叫域名指向、服务器设置、域名配置以及反向IP登记等等。说得简单点就是将好记的域名解析成IP,服务由DNS服务器完成,是把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定

23 CommonJS定义的模块分为:{模块引用(require)} {模块定义(exports)} {模块标识(module)},有点类似于玉伯seajs提出的CMD,按需加载

24 nodejs的require模块及路径:  在nodejs中,模块大概可以分为核心模块和文件模块。

核心模块是被编译成二进制代码,引用的时候只需require表示符即可,如(require('net'))。
文件模块,则是指js文件、json文件或者是.node文件。在引用文件模块的时候后要加上文件的路径:/.../.../xxx.js表示绝对路径、./xxx.js表示相对路径(同一文件夹下的xxx.js),../xxx.js表示上一级目录。如果既不加/.../、../又不加./的话,则该模块要么是核心模块,要么是从一个node_modules文件夹加载

 25 http是HTTP协议运行在TCP之上。所有传输的内容都是明文,客户端和服务器端都无法验证对方的身份。

    在HTTP(应用层) 和TCP(传输层)之间插入一个SSL协议, 就是HTTPS.https是HTTP运行在SSL/TLS之上,SSL/TLS运行在TCP之上。所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥用服务器方的证书进行了非对称加密。此外客户端可以验证服务器端的身份,如果配置了客户端验证,服务器方也可以验证客户端的身份

26 端口有什么用呢?我们知道,一台拥有IP地址的主机可以提供许多服务,比如Web服务、FTP服务、SMTP服务等,这些服务完全可以通过1个IP地址来实现。那么,主机是怎样区分不同的网络服务呢?显然不能只靠IP地址,因为IP 地址与网络服务的关系是一对多的关系。实际上是通过“IP地址+端口号”来区 分不同的服务的。

在网页服务器或超文本传输协议的后台程序中,在默认情况下,端口80(port 80)是服务器侦听网页客户端请求的端口

27 npm的包安装分为本地安装(local)、全局安装(global)两种,从敲的命令行来看,差别只是有没有-g而已,比如

npm install grunt # 本地安装
npm install -g grunt-cli # 全局安装

这两种安装方式主要区别在于:
本地安装
1. 将安装包放在 ./node_modules 下(运行npm时所在的目录)
2. 可以通过 require() 来引入本地安装的包

全局安装
1. 将安装包放在 /usr/local 下
2. 可以直接在命令行里使用

28 window是浏览器的顶层对象, document也是它其中一个属性。document包含所有的dom节点,window包括所有的document,还有比如所有的全局变量,全局对象,loaction对象等等,都是window的属性。

29 一个全局变量或者一个全局对象占用一个内存,只有新定义了一个全局变量才会生成一个新的内存地址

30 回到nodejs中,module.exports初始的时候置为{},exports也指向这个空对象,相当于初始时:var exports = module.exports;exports指向的就是module.exports指向的内存,但是一旦给exports这个变量重新复制,var exports=bbb,那么exports会指向一个新的内存

31 DSL 语言:领域专用语言,

32 $.proxy:保持this的环境,指向上层对象,例:

$.el.on('click','sunnode',$.proxy(function(){

do something

},this));

33 event.currentTarget指向事件所绑定的元素,而event.target始终指向事件发生时的元素

34 切记一点,function调用时,直接等于它的内容,就是{这里面的内容},切记切记!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值