JavaScript知识总结(1)
来源:互联网 发布:淘宝每月刷多少会封号 编辑:程序博客网 时间:2024/05/16 14:07
1. JavaScript数据类型
列举几个:字符串(String): var x = "temp";数字(Number): var x = 1;布尔(Boolean): var x = true;数组(不是基本数据类型): var cars = new Array(); cars[0] = "car1"; cars[1] = "car2"; cars[2] = "car3"; 或 var cars = new Array("car1", "car2", "car3");对象(Object): var person = { name: "Bill", id: 11111 };Null: cars = Null;Undefined: var x;
2. 闭包
找到一个讲解非常清晰易懂的博客:http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html简单理解一下: 闭包就是指能够访问其他函数内部变量的函数,同时它使得这些变量始终保留在内存中。
3. 数组操作
同样指路博客:http://www.cnblogs.com/zhangzt/archive/2011/04/01/2002213.html1. 创建 new Array(); new Array(size);//指定数组长度, 可以存储在指定长度之外,长度会随之改变2. 元素访问 arrayObj[i];//i为指定下标3. 元素添加 arrayObj.push(item1, item2, ..., itemN);//向数组末尾添加一个或多个元素,并返回新的长度 arrayObj.unshift(item1, item2, ..., itemN);//向数组开头添加一个或多个元素,并返回新的长度4. 元素删除 arrayObj.pop();//删除最后一个元素并返回值 arrayObj.shift();//删除第一个元素并返回值, 其他元素往前移 arrayObj.splice(index, count);// 从指定下标删除指定数目的元素5. 截取和合并 arrayObj.slice(start, end);//以数组方式返回下标为start到end-1的元素, end没有指定时就返回start之后的元素6. 字符串化 arrayObj.join(seperator);//用seperator连接数组并返回字符串7. 三个属性1) length 可以设置,当设置长度比原来小时,后面的部分就会被丢弃掉,当长度比原来大时, 新加的部分为"undefined"。 使用new Array()创建的数组初始长度为02) prototype3) constructor
4. JavaScript实现ajax
博客:http://www.cnblogs.com/u-lhy/p/7020340.htmlfunction ajax(options){ var options = options || {}; var type = (options.type || "GET").toUpperCase(); var dataType = options.dataType || "json"; var params = formatParams(options.data) var xhr; // 1. 创建异步加载对象 if (window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else if(window.ActiveObject){ xhr = new ActiveObject('Microsoft.XMLHTTP'); } // 2. 连接和发送 if (type == "GET"){ xhr.open("GET", options.url + "?" + params, true); xhr.send(); }else if (type == "POST"){ xhr.open("POST", options.url, true); //设置表单提交时的内容类型 xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send(); } // 3. 接收 xhr.onreadystatechange = function(){ if (xhr.readyState == 4){ var status = xhr.status; if (status >= 200 && status < 300 || status == 304){ options.success && options.success(xhr.responseText, xhr.responseXML); }else { options.error && options.error(status); } } }}//格式化参数function formatParams(data){ var arr = []; for (var name in data){ arr.push(encodeURIComponent(name) + "=" + encodeURIComponent(data[name])); } return arr.join("&");}调用函数ajax({ url: "", type: "POST", data: {name: "super", age: 20}, dataType: "json", success: function(response, xml){ // 4. 此处放成功后执行的代码 } error: function(status){ // 5. 此处放失败后执行的代码 }});
阅读全文
0 0
- JavaScript知识总结(1)
- JavaScript知识总结
- JavaScript知识总结
- 【JavaScript】知识总结---基础
- JavaScript学习知识总结
- JavaScript 知识总结
- javascript对象知识总结
- javascript 小知识总结
- javascript知识总结
- JavaScript知识总结
- JavaScript基础性知识总结
- javascript今日知识总结
- javascript常用知识总结
- Javascript知识总结
- JavaScript知识归纳(1)
- Javascript之计时器知识总结
- 【知识整理】javascript基础语法总结(1)——变量和数据类型
- javascript表单处理相关的知识总结(一)
- 欢迎使用CSDN-markdown编辑器
- Yarn之ResourceManager详细分析笔记(一)待续
- Unity自学之路(3)——利用Toggle制作分页选项卡面板
- aop
- centos下jdk和tomcat的安装配置
- JavaScript知识总结(1)
- Hadoop学习笔记(1):概念和整体架构
- 千回百折:百度Java研发offer斩获记和经验分享
- Linux进程调度算法
- YYCache源码分析(二)
- Core Java 总结(异常类问题)
- YYCache源码分析(三)
- 详解Hadoop核心架构
- oos 文件下载