`

JS个人整理

 
阅读更多

 

   javascript是网景公司开发的用于与页面进行交互的脚本语言。javascript程序在浏览器端运行,一般写在.js结尾的文件中。主要的功能有表单验证(前端验证),与页面进行交互,生成动态的效果,获得浏览器相关的信息 等。

 

1.setTimeout 和 setInterval

setTimeout("function",time) 设置一个超时对象,执行一次。
setInterval("function",time) 设置一个超时对象,在执行完一次代码之后,经过了那个固定的时间间隔,它还会自动重复执行代码。

不过还是有办法可以终止setTimeout和setInterval函数的执行。

当setInterval调用执行完毕时,它将返回一个timer ID,将来便可以利用该值对计时器进行访问,如果将该ID传递给clearInterval,便可以终止那段被调用的过程代码的执行了

 

2. navigator.userAgent 返回当前浏览器用户代标志

 

3、原生对象 

Object类有下面两个主要属性: 

❑constructor — 创建该对象的函数的引用,对于Object类本身来说,它指向的是浏览器原生的Object() 函数。 

❑prototype — 该对象的原型的引用。所有对象的原型默认为Object。  

Object类的一些方法: 

❑hasOwnProperty(property) —判断本对象是否拥有某一个属性,比如:o.hasOwnProperty(“name”)。

 ❑isPrototypeOf(object) — 判断本对象是否是另一对象的原型。 

❑propertyIsEnumerable(property) — 判断本对象的某属性是否是枚举类型(可以使用for…in)来获取每一个值。 

❑toString() — 输出本对象的字符串形式,依赖于其具体实现。 ❑valueOf() —与toString()相同。 

 

4、Number对象 

toExponential([fractionDigits]) :将数字按科学计数法格式返回,fractionDigits值小数点后保留的位数。

toFixed([fractionDigits]) :将数字按指定的小数点位数返回,fractionDigits值小数点后保留的位数。

toPrecision([precision]) :将数字按指定的精度返回(这个精度不是指小数点后几位),precision是指定的精度值。

 Number(): 转换的是整个值,如果字符串值能被完整地转换,Number()将判断是调用parseInt()方法还是调用 parseFloat()方法。"4.5.6 "将被转换为 NaN。

parseInt()和parseFloat(): 只转换第一个无效字符之前的字符串。 e.g:"4.5.6 "将被转换为 "4.5 "。 

 

formatValue = parseFloat(1.234e5.toString());  result:123400

 

5、array

shift: 删除数组第一个元素,并返回这个元素

unshift:向数组的开头添加一个或多个元素,并返回新的长度   e.g. unshift('-2','1');

splice: 删除元素,并向数组添加新的元素  

splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,...

 

join: 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔

e.g. var a = [1,2,3,4,5]; var b = a.join("|"); //a:[1,2,3,4,5]   b:"1|2|3|4|5"

push: 向数组的末尾添加一个或更多元素,并返回新的长度

pop:删除数组最后一个元素,并返回这个元素

concent: 返回一个新数组,是将参数添加到原数组中构成的

e..g. var a = [1,2,3,4,5]; var b = a.concat(6,7); //a:[1,2,3,4,5]   b:[1,2,3,4,5,6,7]

slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组
var a = [1,2,3,4,5];
var b = a.slice(2,5); //a:[1,2,3,4,5]   b:[3,4,5]

 

6、 Event

onblur:会在对象失去焦点时发生

oncontextmenu: 鼠标按下右键的时候发生

onscroll:拖动滚动条时发生

onresize: 会在窗口或框架被调整大小时发生

onmousewheel: ie、chrome下鼠标滚轮滚动时发生

DOMMouseScroll: 是标准下(ff)鼠标滚轮事件,鼠标滚轮滚动时发生

//-----

keyCode:在Event对象下获取用户按下键盘的哪个按键

preventDefault()阻止默认默认事件的绑定写法

cancelBubble =true 在Event对象下取消冒泡事件

 

7、继承

参考:http://yahaitt.iteye.com/blog/250338

//todo

 

8、正则表达式

  参考: http://www.jb51.net/article/21484.htm

e.g. 

       var pattern = /^[0-9]{1,20}$/;

        if (!pattern.exec(s)) return false;

 

        return true;

 

9、 js有5种数据类型(原数据):Undefined、Null、Boolean、Number、String 

  Undefined数据类型的值只有1个:undefined 
  Null数据类型的值只有1个:null 
  Boolean数据类型的值只有2个:true、false 
  Number的数据类型的值:所有的浮点数和整数 
  String的数据类型的值:所有的字符串 
  undefined是由null派生而来的 

 

10、强制类型转换

强制类型转换有3种:Boolean(value),Number(value),String(value),返回值类型(即用typeof运算符)都是原始类型的值 
  Boolean(value):只有value的值为null或0或""时,才为false,否则为true 
  Number(value);value为非数字时,结果为NaN(意思为not a number)

指定当前显示链接的位置:window.location.href="URL"

 

11、js不同于java的另一种特点是:js在实例化对象后,可以对这个对象增加属性和属性值,并且还可以通过delete一元操作符来删除对象的属性。 
  var o = new Object(); 
  o.name = "langsin"; 
  alert(o.name); 
  delete o.name; 
  alert(o.name);

 

12、window.open() 获取返回值
   var value=window.open('open.htm','window','width=200,height=200,left='+x+',top='+y);

子窗口:window.opener.document.all.code.value=text.value;

 

13、js拖动事件:dragstart、drag、dragend

 

14、offsetLeft:获得元素的左偏移量

offsetLeft和OffsetTop不是获得元素和页面的距离,只是获得元素和父元素的的距离

 所以要进行while循环一层层累加距离,最后得到元素和页面之间的距离

 

15、JS点击复制copy

  1. var Url2=document.getElementById("biao1");  
  2. Url2.select(); // 选择对象  
  3. document.execCommand("Copy"); // 执行浏览器复制命令  
  4. var clipBoardContent=this.location.href;  
  5. window.clipboardData.setData("Text",clipBoardContent);  
  6.  window.clipboardData.clearData(); 

详细地址: http://zzc1684.iteye.com/blog/2115935

 

16、判断是否Ajax请求 x-requested-with 请求头

在服务器端判断request来自Ajax请求(异步)还是传统请求(同步):两种请求在请求的Header不同,Ajax 异步请求比传统的同步请求多了一个头参数

 1、传统同步请求参数

    accept  text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    accept-charset  gb2312,utf-8;q=0.7,*;q=0.7
    accept-encoding  gzip,deflate
    accept-language  zh-cn,zh;q=0.5
    cache-control  max-age=0
    connection  keep-alive
    cookie  JSESSIONID=1A3BED3F593EA9747C9FDA16D309AF6B
    host  192.168.101.72:8080
    keep-alive  300
    referer  XXX

    user-agent  Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.15) Gecko/2009101601 Firefox/3.0.15 (.NET CLR 3.5.30729)

 

  2、Ajax 异步请求方式

    accept  */*
    accept-language  zh-cn
    referer  xxx

    x-requested-with  XMLHttpRequest  //表明是AJax异步
    content-type  application/x-www-form-urlencoded,text/javascript
    accept-encoding  gzip, deflate
     user-agent  Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; QQDownload 598; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; CIBA; .NET CLR 1.1.4322; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.1)
    host  192.168.101.72:8080
    content-length  233
    connection  Keep-Alive
    cache-control  no-cache
    cookie  CSS=undefined; JSESSIONID=1B9AC25036290F7FB6823CCE1A24E541

 

  可以看到 Ajax 请求多了个 x-requested-with ,可以利用它,request.getHeader("x-requested-with"); 为 null,则为传统同步请求,为 XMLHttpRequest,则为 Ajax 异步请求。

 

 

 

others:  http://www.cnblogs.com/mbskys/articles/640506.html

  W3C webSite:  http://www.w3school.com.cn/js/

分享到:
评论

相关推荐

    JS格式整理工具

    "JS格式整理工具"是一个专为JavaScript代码美化和格式化设计的应用。这个工具的主要功能是帮助开发者将混乱无序的JS代码整理成清晰易读的标准格式,提高代码的可读性和维护性。在编程过程中,代码的整洁度是至关重要...

    javascript 思维导图 个人整理

    javascript 思维导图 个人整理

    JS代码格式整理工具einars-js-beautify

    **JS代码格式整理工具einars-js-beautify详解** 在编程过程中,保持代码整洁和规范是至关重要的。JS代码格式整理工具einars-js-beautify就是这样一个帮助开发者自动化完成这项任务的工具。它能快速地将混乱无序的...

    javascript小游戏源代码个人整理

    javascript小游戏源代码个人整理,大部分是基于 jquery的。 扫雷,俄罗斯方块,贪吃蛇,数独,老虎机,吉他英雄

    自己整理的常用js

    总的来说,"自己整理的常用js"可能包含JavaScript的基础知识、进阶特性、DOM操作、事件处理和CSS的JavaScript操作等内容,是作者个人学习和实践经验的结晶。对于想要深入理解JavaScript的开发者来说,这是一份宝贵的...

    EXT_JS实用开发指南_个人整理笔记.rar

    这份“EXT_JS实用开发指南_个人整理笔记”可能是开发者在深入学习EXT_JS时的宝贵参考资料,涵盖了EXT_JS的主要概念、组件使用、事件处理以及实际项目中的实践经验。 在EXT_JS开发中,首先要理解其基本架构和组件...

    常用JS框架比较(个人整理)

    “常用JS框架比较.pdf”可能是深入比较这些框架的性能、学习曲线、社区支持、生态系统等方面的资料。比如,Angular以其强大的依赖注入系统和模块化受到大型企业青睐,但学习曲线相对较陡峭;React则以其组件化思想和...

    个人实用java、js个人资料

    - 笔记和总结:个人学习过程中的笔记、思维导图或重要知识点的整理。 6. 进阶学习和提升: - 对于Java,可以学习Spring Boot、Spring Cloud等企业级框架,以及并发编程和JVM优化。 - 对于JavaScript,可以深入...

    javaScript资料.zip(个人整理的资料)

    这份名为“javaScript资料.zip”的压缩包,显然是一个个人精心整理的JavaScript学习资源集合,包含了各种常用JS知识点、函数、参数和语法介绍文档,对于初学者和进阶者来说都是宝贵的参考资料。 JavaScript语法基础...

    个人整理js解析XML文档

    到此我们知道了,当系统出现内存溢出时,是哪些参数设置不合理需要调整。但我们怎么知道服务器启动时,到底JVM内存相关参数的值是多少呢。 在实践中,经常遇到对JVM参数进行设置了,并且自己心里觉得应该不会出现...

    EXT_JS实用开发指南_个人整理笔记.doc

    EXT_JS实用开发指南_个人整理笔记,代码、注释、图片描述浅显易懂,详细描述了ext框架的各个组件的样式和使用

    简洁个人导航源码(html+css+js)

    在IT行业中,构建个人导航网站是一项常见的任务,用于整理并分享个人常用的网络资源。这个"简洁个人导航源码(html+css+js)"提供了一种快速实现这一目标的方法。源码通常包括三个主要部分:HTML负责结构,CSS负责...

    js个人脚本示例

    这个“js个人脚本示例”压缩包包含了作者精心整理的20个大类,总计343个源码示例,覆盖了JavaScript的多个关键领域,为学习和提升JavaScript技能提供了丰富的实践资源。 首先,我们来探讨一下JavaScript的基本语法...

    个人收集JavaScript源代码集

    描述中的“个人收集”暗示这可能是一个非官方的、由个人整理的资料库,这些代码可能来自于互联网上的不同来源,包括论坛、博客、开源项目等。这样的资源通常能提供一个多样化的视角,帮助学习者了解不同的编程风格和...

    EXT_JS实用开发指南_个人整理笔记

    EXT_JS实用开发指南主要涵盖了EXT_JS框架的基础使用和核心组件,这是基于JavaScript的富客户端应用开发库,特别适合构建桌面级的Web应用。以下是对EXT_JS开发的一些关键知识点的详细解释: 1. **引入EXT_JS库**: ...

    javascript+jquery+个人基本资料整理

    个人的学习总结,一些开发常用的文档,对j2ee开发很有用的,个人的知识出来总结。

    EXT_JS实用开发指南_个人整理笔记.docx

    EXT_JS是一种基于JavaScript的富客户端应用开发框架,主要用于构建用户界面。这个开发指南主要涵盖了EXT_JS的基本使用方法和核心概念,对于入门EXT_JS的开发者来说是十分宝贵的资源。以下是EXT_JS的一些关键知识点:...

    收集整理的js网页版游戏

    在本资源中,"收集整理的js网页版游戏"是一个包含多款基于JavaScript(js)开发的网页游戏的集合。JavaScript是一种广泛应用于客户端Web开发的脚本语言,它赋予网页动态功能,使得用户与网页之间的交互更为丰富。...

    Json技术文档 个人整理

    这个技术文档是个人整理的,包含了作者在工作实习期间遇到的实际问题及解决方案,对于理解和使用JSON进行数据交互具有一定的参考价值。 1. JSON的基本结构 JSON数据格式主要由对象(Object)和数组(Array)两种...

Global site tag (gtag.js) - Google Analytics