![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
文章平均质量分 61
2008winstar
这个作者很懒,什么都没留下…
展开
-
JavaScript BOM 相关知识
location.reload();location.href = '';location.hashlocation.hostnamelocation.pathnamelocation.searchlocation.protocolscreen.availHeight; //returns screen height in原创 2015-01-08 23:36:39 · 257 阅读 · 0 评论 -
JavaScript基础知识
JavaScript JavaScript由核心(ECMAScript),文档对象模型(DOM),浏览器对象模型(BOM)三部分组成。 JavaScript是弱类型语言,表明该语言在表达式运算中不强制校验运算元的数据类型。 JavaScript能识别6种数据类型:undefined,number,stirng,b...原创 2014-09-13 09:38:10 · 68 阅读 · 0 评论 -
JavaScript的一些技巧
本文内容整理自网络。主要列举了使用JavaScript时应该注意的一些技巧。 1 变量使用前,需要使用var关键字声明,避免使用全局变量; 2 尽量使用===(!==),而不用==(!=); ===(!==)操作不执行转换,在速度上被认为优于==(!=) 3 使用闭包实现私有变量; 4 语句结尾不省略分号; 5 构造函数首字母大写,通过new...原创 2014-10-05 23:06:24 · 67 阅读 · 0 评论 -
JavaScript之函数
在JavaScript中,函数是“第一等公民“,意味着函数可以像其它类型的数据一样,作为其它函数的参数,或者作为其它函数的返回值(也就是说函数可以返回函数)。 函数的原型对象:Function.prototype,它是一个函数,在函数上可以使用call,apply方法。 Function.prototype.call一个函数的call()方法接收两类参数,第一类参数是指定上...原创 2014-10-06 14:14:05 · 63 阅读 · 0 评论 -
JavaScript之执行
JavaScript的解析执行是单线程的,也就是说所有的JavaScript代码是在一个线程里执行的,JavaScript引擎同一时间只执行一条代码,所以每一个JavaScript代码执行块会”阻塞“其它异步事件的执行。 JavaScript是事件驱动的,用户的操作会触发相应的事件(如点击、Ajax请求等),这些事件发生后,绑在事件上的回调函数会被添加到一个执行队列的最后等待执行。这些事...原创 2014-10-06 17:16:13 · 98 阅读 · 0 评论 -
通过一行代码学JavaScript
本文内容源于这里 首先来看下面这行代码:[].forEach.call($$("*"),function(a){ a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16)}) 你可以在浏览器的控制台执行这段代码,你会看到页面中不同的HTML结构被不同颜色的框圈着。是不是...原创 2014-10-10 20:52:49 · 102 阅读 · 0 评论 -
使用Promises
本文内容来自《Pro AngularJS》,原文作者为Adam Freeman。翻译过程中加入了译者的理解,并作了适当的筛减。 promise是JavaScript中处理异步事务的一种方式,这样的事务会在后续的某个时间点上完成。通常会在使用Ajax请求的时候使用到promise,浏览器在后台发起HTTP请求,并且在请求完成后使用promise通知相应的应用程序。以下程序示例,演示了...原创 2014-10-13 22:40:13 · 135 阅读 · 0 评论 -
使用JSON
本文内容来自《Pro AngularJS》,原文作者为Adam Freeman。翻译过程中加入了译者的理解,并作了适当的筛减。 JavaScript对象表示法(JSON)已成了Web应用中实际使用的数据格式。JSON非常简单且容易在JavaScript代码中使用,这使它非常流行。JSON支持一些简单的数据类型,这些数据类型能在JavaScript找到与之对应:Number,Stri...原创 2014-10-15 22:06:12 · 70 阅读 · 0 评论 -
23世纪的JavaScript
本文来自这里,翻译过程中加入了译者的理解并作了适当的筛减。 在过去的几年中,JavaScript应用程序在规模和复杂性方面都越来越大。市场上出现了越来越多的单页面应用,并且对这种体验的需求已经达到了促使Google最终决定在爬行页面的过程中考虑支持JavaScript。 对单页面应用的需求,也促使JavaScript架构变得越来越重要。而对于作为动态语言的JavaScript来...原创 2014-10-19 17:42:24 · 89 阅读 · 0 评论 -
JavaScript基础知识(二)
JavaScript的数据类型:number,string,boolean,null,undefined,Object 可以使用typeof来判断一个数据所属的类型,typeof返回的值可能为number,string,boolean,undefined,object,function六种中的某一种的字符串。 number,string,boolean为值类型obje...原创 2014-10-22 19:39:20 · 64 阅读 · 0 评论 -
怪异的JavaScript
[] + {} // "[object Object]"{} + [] // 0[] + {} === {} + [] // true{} + [] === [] + {} //false var found = new Boolean(false);if (found) { console.log("Found"); // 会执行}...原创 2014-10-24 19:27:04 · 78 阅读 · 0 评论 -
JavaScript
原生JavaScript事件监听默认只允许一个响应函数,onevent形式,onclick = function(){}; 使用event listener可以注册多个响应函数W3C方式:addEventListener(eventName, callback, false/true); removeEventListener();IE方式...原创 2014-11-02 14:53:48 · 59 阅读 · 0 评论 -
JavaScript基础知识
现在应该使用的5个数组方法 ECMAScript 5 发布时,为数组提供了一些新的方法。然后,由于缺乏浏览器的支持,却迟迟未得到广泛的使用。 本文列举了9个ES5数组方法中的其中5个的使用方法和应用场景。 1)indexOf indexOf()方法,返回指定元素在数组中首次出现的索引,如果在数组中未找到该元素,则返回-1。与字符串中的indexOf()方法...原创 2014-11-05 23:04:10 · 77 阅读 · 0 评论 -
JavaScript数组
声明数组:var arr = [];var arr = new Array();向数组中添加元素:arr[arr.length] = newElement;arr.push();arr.unshift();push()和unshift()方法返回新数组的长度。 从数组中删除元素:arr.pop();arr.shift(); pop()和uns...原创 2014-11-05 23:04:37 · 65 阅读 · 0 评论 -
AMD
AMD(异步模块定义),规范提供了定义模块,异步加载模块的依赖的机制。 规范只定义了一个函数“define”,它是全局变量。函数的描述为:define(id?, dependencies?, factory); 第一个参数,id,是个字符串,指的是定义模块的名字,是可选的。 模块名规范 模块名是用正斜杠分割的有意义单词的...原创 2014-11-10 22:33:32 · 78 阅读 · 0 评论 -
RaphaelJS
RaphaelJS是一个用JavaScript实现的强大的矢量图形库。 (1)使用前准备,下载RaphaelJS,到官网下载。 (2)在相应的HTML页面引入RaphaelJS,如下示例代码:<!DOCTYPE html><html><head> <title>RaphaelJS Demo</ti...原创 2014-08-11 19:47:25 · 107 阅读 · 0 评论 -
JavaScript——AJAX
1 XMLHttpRequest对象的创建 IE5:xhr = new ActiveXObject("Microsoft.XMLHTTP); IE6+:xhr = new ActiveXObject("Msxml2.XMLHTTP); 其他浏览器:xhr = new XMLHttpRequst(); 2 XMLHttpRequest对象的属性...原创 2014-08-03 14:11:02 · 69 阅读 · 0 评论 -
JavaScript DOM 操作小结
document.createElement('div');document.createTextNode('txt');document.getElementById('idname');document.getElementsByTagName('p');document.getElementsByClassName();appe原创 2015-01-08 23:21:27 · 350 阅读 · 0 评论 -
JavaScript基础知识
JavaScript JavaScript由核心(ECMAScript),文档对象模型(DOM),浏览器对象模型(BOM)三部分组成。 JavaScript是弱类型语言,表明该语言在表达式运算中不强制校验运算元的数据类型。 JavaScript能识别6种数据类型:undefined,number,stirn原创 2015-01-10 18:39:19 · 493 阅读 · 0 评论 -
前端代码规范
Web 前端代码规范 必须1 结构、样式、行为三层分离;2 采用统一的缩进(两个或四个空格/Tab);3 嵌套标签应当缩进一次,必须合理嵌套;4 HTML页面必须包含文档类型声明,采用HTML5文档类型声明; Document 5 CSS样式全部采用外链的方式在标签中引入;禁用行内样式,复用已有的样式规则;原创 2015-01-10 18:52:01 · 448 阅读 · 0 评论 -
JavaScript——AJAX
1 XMLHttpRequest对象的创建 IE5:xhr = new ActiveXObject("Microsoft.XMLHTTP); IE6+:xhr = new ActiveXObject("Msxml2.XMLHTTP); 其他浏览器:xhr = new XMLHttpRequst(); 2 XMLHttpRequest对象原创 2015-01-10 17:18:33 · 319 阅读 · 0 评论 -
JavaScript基础知识
JavaScript中的基本数据类型包括Undefined、Null、Boolean、Number和String;ECMAScript变量可能包含两种不同数据类型的值:基本类型值(值传递)和引用类型值(引用传递)。基本类型值指的是那些保存在栈内存中的简单数据段;引用类型值指的是那些保存在堆内存中的对象。JavaScript中所有函数的参数都是按值传递的。数组的s原创 2015-01-08 22:43:34 · 370 阅读 · 0 评论 -
RaphaelJS
RaphaelJS是一个用JavaScript实现的强大的矢量图形库。 (1)使用前准备,下载RaphaelJS,到官网下载。 (2)在相应的HTML页面引入RaphaelJS,如下示例代码: RaphaelJS Demo (3)在通过元素创建一个对象var elm = document.getElementById("原创 2015-01-10 17:25:02 · 604 阅读 · 0 评论 -
JavaScrpt 全局属性与函数
Infinity-InfinityisFinite();isNaN();parseInt();parseInt('str', base)parseFloat();encodeURI()encodeURIComponent()decodeURI()decodeURIComponent(原创 2015-01-08 23:39:24 · 330 阅读 · 0 评论 -
JavaScript之字符串与数组
string(字符串)属性与方法(1)s.length,返回字符串长度;(2)s.charAt(index),返回指定位置的字符(3)s.toLowerCase(),(4)s.toUpperCase(),(5)s.splice(start, end),(6)s.split('-'),(7)s.indexOf(),(8)s.原创 2015-01-08 23:27:48 · 303 阅读 · 0 评论 -
JavaScript OOP基础知识
示例代码:var foo = {}, bar = new Object(), baz = Object.create(null);var box = Object.create({}, { openLid: { value: function(){ return 'something'; }, e原创 2015-01-08 23:24:12 · 320 阅读 · 0 评论 -
JavaScript计算页面元素位置相关知识
鼠标事件的event对象的属性clientX: 设置或获取鼠标当前位置和浏览器窗口中当前可见区域的最左端之间的距离(不包括页面滚动距离)。clientY: 设置或获取鼠标当前位置和浏览器窗口中当前可见区域的最顶端之间的距离(不包括页面滚动距离)。screenX: 设置或获取鼠标当前位置和整个电脑屏幕最左端之间的距离(不包括页面滚动距离)。screenY: 设置或获取原创 2015-01-08 22:59:42 · 487 阅读 · 0 评论 -
使用Promises
promise是JavaScript中处理异步事务的一种方式,这样的事务会在后续的某个时间点上完成。通常会在使用Ajax请求的时候使用到promise,浏览器在后台发起HTTP请求,并且在请求完成后使用promise通知相应的应用程序。以下程序示例,演示了一个极简单的AngularJS应用,并在其中调用Ajax请求。 Example To Do翻译 2015-01-10 19:17:42 · 468 阅读 · 0 评论 -
JavaScript
1 字符串操作方法string.slice(start[, end]);如果只提供start参数,则表示从start位置到字符串结束。string.slice(start, end)包含start,但不包含end。[start, end)原创 2015-01-25 20:02:56 · 308 阅读 · 0 评论 -
怪异的JavaScript
var obj = {'': 100};obj.['']; // 输出 100;原创 2015-01-10 18:42:39 · 370 阅读 · 0 评论 -
JavaScript一些细节知识
1. 在使用嵌入JavaScript代码时,不能再代码中的任何地方出现“"字符串,因为这样的字符串,会被解析成结束的标签。可以通过将字符串拆分来实现,如 ""。2. switch语句在比较值时使用的是全等操作符,因此不会发生类型转换。3. JavaScript中没有真正意义的重载 ECMAScript中的函数不能实现传统意义上那样的重载,因为JavaScr原创 2015-01-08 22:27:19 · 410 阅读 · 0 评论 -
JavaScript变量提升示例
直接先看两段代码 function getSum() { var sum = a + b; var a = 1; var b = 2; return sum; } getSum(); function getSum() {原创 2015-07-05 16:55:27 · 770 阅读 · 0 评论 -
JavaScript异常处理
window.localStorage在尝试写入数据超过容量限制时会抛异常,在Safari的隐私浏览模式下也会如此。因此,需要把调用放到try-catch语句里面:try { localStorage.setItem('date', Date.now());} catch (error) { reportError(error);} 有时候,需要把回调函数...原创 2014-11-22 21:30:12 · 73 阅读 · 0 评论