js术语扫盲贴:XHR、RegExp、call-apply、prototype

(1) XHR:xml httprequest
XHR注入:XHR 注入技术是通过XMLHttpRest来获取javascript的。但与eval不同的是,该机制是通过创建一个script的DOM元素,然后把XMLHttpRequest的响应注入script中来执行javascript的。在某些情况下使用eval可能比这样机制慢。XHR injection 通过XMLHttpRequest获取的内容必须部署在和主页相同的域中。

(2) RegExp:正则表达式

<script>
    var reg=new RegExp("\这里写正则表达式\");
     if(reg.test(varname)){.... }
</script>

eg:

var reg =/^[(]?0\d{2,3}[)-]?\d{7,8}|\d{11}$/;//这里是匹配联系方式的正则表达式(我写的,也不一定正确)
if (!reg.test("0370-3315963")){
   return;
}

(3) call/apply作用都是把一个函数绑定到一个对象上去运行,巨头格式:
call( thisArg [,arg1,arg2,… ] ); // 参数列表,arg1,arg2,...
apply(thisArg [,argArray] ); // 参数数组,argArray

(4) prototype:javascript中的每个对象都有prototype属性,Javascript中对象的prototype属性的解释是:返回对象类型原型的引用。
A.prototype = new B();

理解prototype不应把它和继承混淆。A的prototype为B的一个实例,可以理解A将B中的方法和属性全部克隆了一遍。A能使用B的方法和属性。这里强调的是克隆而不是继承。可以出现这种情况:A的prototype是B的实例,同时B的prototype也是A的实例。

http://blog.163.com/xinarila121_milnln/blog/static/232347159201412451335344/

 

时间: 2024-10-29 11:27:42

js术语扫盲贴:XHR、RegExp、call-apply、prototype的相关文章

grunt实用总结

文章梗概如下: 如何让Grunt在项目跑起来 初识:Gruntfile.js 术语扫盲:task & target 如何运行任务 任务配置 自定义任务 文件通配符:glob模式 文件通配符:例子 常用API 如何初始化Gruntfile.js 通过模板初始化Gruntfile.js 获取命令行参数 插件编写 入门简介:http://www.cnblogs.com/chyingp/p/what-is-grunt.html 如何让Grunt在项目跑起来 搞定下面三点,就可以愉快地使用grunt了.

简单对比分析JavaScript中的apply,call与this的使用_javascript技巧

1.apply定义 apply:调用函数,并用指定对象替换函数的 this 值,同时用指定数组替换函数的参数. 语法:apply([thisObj[,argArray]]) thisObj 可选.要用作 this 对象的对象. argArray 可选.要传递到函数的一组参数. 2.call定义 call:调用一个对象的方法,用另一个对象替换当前对象. 语法:call([thisObj[, arg1[, arg2[, [, argN]]]]]) thisObj 可选.将作为当前对象使用的对象. a

深入分析 Node.js 异步流程控制教程

摘要 目前在js流程控制领域越来越乱,各种派系...比如promise,generator,async函数,各种混战,在百花齐放的今天,作为前端或Node.js沾边工程师或全栈工程师,你知道该学哪种么? 从下一代测试框架ava说起 流程控制发展的前世今生概览 从co引出的血案,到yieldable 5种,到aysnc函数,聊聊同步的流程控制 最后推导一下学习重点.未来趋势 个人介绍 i5ting(桑世龙),空弦科技 CTO,StuQ 明星讲师,开源项目 Moajs 作者,Node.js 技术布道

JS教程:词法作用域和闭包

var classA = function(){     this.prop1 = 1; } classA.prototype.func1 = function(){     var that = this,         var1 = 2;             function a(){         return function(){             alert(var1);             alert(this.prop1);         }.apply(th

精通 JS正则表达式

正则表达式可以: •测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式.这称为数据有效性验证 •替换文本.可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字 •根据模式匹配从字符串中提取一个子字符串.可以用来在文本或输入字段中查找特定文字 正则表达式语法 一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式.该模式描述在查找文字主体时待匹配的一个或多个字符串

7种增加网站用户体验的JS脚本分页代码

网页设计中,要考虑的方面很多,当然,大体来说就是两类:代码+UI,简洁的代码加上美观的UI,是一个网站理想的选择,一个网站设计成功与否,很 多时候要从细节入手,关注细节,才能关注用户体验,用户体验的友好,才能说明网站的设计是成功的,下面分享7种JS脚本分页代码,让细节到从内容页面的分 页上来,高手可以飘过,这是写给不懂JS的朋友看的. <script language="JavaScript"> <!-- /* 7种分页脚本定义 ===================

用原生JS对AJAX做简单封装的实例代码_javascript技巧

首先,我们需要xhr对象.这对我们来说不难,封装成一个函数. var createAjax = function() { var xhr = null; try { //IE系列浏览器 xhr = new ActiveXObject("microsoft.xmlhttp"); } catch (e1) { try { //非IE浏览器 xhr = new XMLHttpRequest(); } catch (e2) { window.alert("您的浏览器不支持ajax,请

实战JS正则表达式

原文:实战JS正则表达式 -正则表达式是一种文本模式的匹配工具. -文章导读: --1.正则对象的属性和方法 --2.字符串对象的方法 --3.使用正则表达式: ---3.1 给字符串加上千分符 ---3.2 字符串中出现次数最多的字母 ---3.3 在多行中使用正则表达式 ---3.4 从url中提取子域名 ---3.5 分割Unicode字符 ---3.6 在location对象中使用正则    ------------------------------------------------

js与jQuery终止正在发送的ajax请求的方法_AJAX相关

本文实例讲述了js与jQuery终止正在发送的ajax请求的方法.分享给大家供大家参考,具体如下: 核心:调用XMLHttpRequest对象上的abort方法 jquery的ajax方法有自己的超时时间设置参数: $.ajax({type:'POST', url:'b.php', data:'', timeout:5000, success:function(){ } }) 同时 1. $.get返回的数据类型是XMLHttpRequest,请参考手册.($.post.$.ajax.$.get