[js]javascript索引
js&jq总结的还是挺棒的:
http://www.cnblogs.com/yuanchenqi/articles/5980312.html
http://www.cnblogs.com/yuanchenqi/articles/6070667.html
我学了很久没把js学会, 我发现我的路子错了, 一开始就追求大而全.....累死... 好办法应该是迭代式更新知识点....
ECMAScript(4,5) 目前学的是es5
es6其实是ECMAScript 2015.
- 前端工作的日常:
拿到ui设计图: 切图--> html+css静态布局-->js写一下动态效果
ajax和后台进行交互-->把数据绑定到页面上-->用nodejs服务平台做src管理-->
用nodejs做后台
前端开发:
html css js
后端开发:
nodejs提供resetful api
移动端开发:
前端开发 html5 css3 bootstrap angular promise websocket requre.js
后端开发 nodejs express socket.io resetful
数据库: mongodb redis mysql orm
移动开发: react react-native
- node
1.创建服务器,访问
2,区分path和query
3,返回指定html, fs模块
4,返回任意html
5.根据后缀设置content-type
// 思路: 接收请求 -- 获取后缀 -- 设置content-type -- 响应
| 4种输出方法 | 说明 |
|---|---|
| alert(confirm) | 弹出 |
| document.write | 写入文档,通常页面中间插入广告 |
| console.log | console |
| innerHTML/innerText | 在指定元素中动态添加内容 |
浏览器(window浏览器对象) --> 文档(document对象) --> html元素
js有3部分组成:
ECMAScript(4,5): 定义了js的语法.(数据类型,基本语法,操作语句等最核心的东西)
BOM: (Window) 浏览器对象模型
DOM: (Document) 文档对象模型: 参考: http://www.cnblogs.com/iiiiher/p/7967384.html
注意: document 文档对象和BOM(浏览器对象模型)不是一回事.
// 变量命名: 区分大小写
// 定义变量:
var name = "maotai";
console.log(name);
// 数据类型:
// 数字 字符串 布尔 [] {} 正则
var num = 12;
var str = "maotai";
var boo = true;
var n = null;
var m = undefined;
var obj = {name: 'maotai'};
var arr = [1, 2, 3];
var reg = /^1\d{11}/;
var fn = function () {
}
// 数据类型分类:
// 基本数据类型: number string boolen null undefined
// 引用数据类型: 对象{} 数组[] 正则reg
// 函数数据类型
- if判断& switch语句
- 两种for循环
// 3个判断 3个循环
var num = 10;
if (num < 0) {
console.log('负数');
} else if (num > 10 && num < 10) {
console.log('1-10');
} else {
console.log('大于10');
}
num >=0?console.log("正数或0"):console.log("负数");
switch (num){
case 0:
console.log("0");
case 5:
console.log('5');
break;
default:
console.log("NaN");
}
for (var i = 0;i<10;i++){
console.log(i);
break;
}
var arr = [1,2,3,4,'maotai'];
for (i in arr){
console.log(arr[i]);
}
- innerHTML和innerText的区别
<div id="app"></div>
<script>
var app = document.getElementById("app");
app.innerText = '<h1>maotai</h1>';
// app.innerHTML = '<h1>maotai</h1>';
</script>
- innerHtml解析html标签, innnerText不解析html
- 数组的13个方法
var arr = [0, 1, 2, 3];
arr.push(4);
arr.push(5, 6);
arr[arr.length] = 7;
console.log(arr);
arr.pop();
console.log(arr);
arr.shift()
console.log(arr);
arr.unshift(0);
console.log(arr);
arr.splice(2,2); //从索引n开始删除m个
console.log(arr);
arr.splice(2); //从索引n开始删除到结尾
arr.splice(0); //清空原数组,返回原数组的每一项
arr.splice(); //数组中一项都没删除, 返回一个空数组
arr.splice(1,2,0); //从索引n开始删除m个,删除的部分用x代替
arr2 = [6,7,8];
arr1.concat(arr2); // 把arr2接到arr1后
arr2.toString(); // 将数组转换为字符串
arr.join('+'); // 数组以+为分割符
arr.reverse(); // 倒序排列



- 每一种资源文件都有自己的标识类型. 浏览器按照提供的MIME(content-type)类型渲染页面
text/plain txt
var suffix = reg.exec(pathname)[1].toUpperCase();
var reg = /\.(HTML|CSS|JS|JSON|TXT|ICO)/i;
var suffixMIME = 'text/plain';
if (reg.test(pathname)) {
switch (suffix) {
case "HTML":
suffixMIME = 'text/html';
break;
case "JS":
suffixMIME = 'text/javascript';
break;
case "CSS":
suffixMIME = 'text/css';
break;
case "JSON":
suffixMIME = 'application/json';
break;
case "ICO":
suffixMIME = 'application/octet-stream';
break;
}
}
作用域链查找规则获取值和设置值
js代码执行顺序/全局&私有变量/作用域链/闭包
js原型链继承小结
js栈内存的全局/私有作用域,代码预解释
js中4种无节操的预解释情况
js的惰性声明, js中声明过的变量(预解释),后在不会重新声明了
this关键字代表当前执行的主体
js中变量带var和不带var的区别
函数的上级作用域,他的上级作用域就是谁,跟函数在哪执行的没什么关系.
js设计模式-单例模式
js设计模式-工厂模式
js设计模式-原型模式
js设计模式-修改原型
js杂项陆续补充中...
js设计模式-构造函数模式
js设计模式小结
设计模式小结&对原型的修改
ajax-异源请求jsonp
jquery里的jsonp实现ajax异源请求
浏览器同源策略(same-origin policy)
[js]javascript索引的更多相关文章
- Atitit.js javascript的rpc框架选型
Atitit.js javascript的rpc框架选型 1. Dwr1 2. 使用AJAXRPC1 2.2. 数据类型映射表1 3. json-rpc轻量级远程调用协议介绍及使用2 3.1. 2.3 ...
- Immutable.js – JavaScript 不可变数据集合
不可变数据是指一旦创建就不能被修改的数据,使得应用开发更简单,允许使用函数式编程技术,比如惰性评估.Immutable JS 提供一个惰性 Sequence,允许高效的队列方法链,类似 map 和 f ...
- Js(javaScript)的闭包原理
问题?什么是js(javaScript)的闭包原理,有什么作用? 一.定义 官方解释:闭包是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分. 小编 ...
- 【转】Eclipse去除js(JavaScript)验证错误
这篇文章主要是对Eclipse去除js(JavaScript)验证错误进行了介绍.在Eclipse中,js文件常常会报错.可以通过如下几个步骤解决 第一步:去除eclipse的JS验证:将window ...
- thrift js javascript C# Csharp webservice
http://www.cnblogs.com/xxxteam/archive/2013/04/15/3023159.html 利用thrift实现js与C#通讯的例子 关键字:thrift js ja ...
- Atitit.js javascript异常处理机制与java异常的转换 多重catc hDWR 环境 .js exception process Vob7
Atitit.js javascript异常处理机制与java异常的转换 多重catc hDWR 环境 .js exception processVob7 1. 1. javascript异常处理机制 ...
- Atitit.js javascript异常处理机制与java异常的转换.js exception process Voae
Atitit.js javascript异常处理机制与java异常的转换.js exception processVoae 1. 1. javascript异常处理机制 1 2. 2. Web前后台异 ...
- atitit.js javascript 调用c# java php后台语言api html5交互的原理与总结p97
atitit.js javascript 调用c# java php后台语言api html5交互的原理与总结p97 1. 实现html5化界面的要解决的策略1 1.1. Js交互1 1.2. 动态参 ...
- Atitit. servlet 与 IHttpHandler ashx listen 和HttpModule的区别与联系 原理理论 架构设计 实现机制 java php c#.net js javascript c++ python
Atitit. servlet 与 IHttpHandler ashx listen 和HttpModule的区别与联系 原理理论 架构设计 实现机制 java php c#.net j ...
随机推荐
- 虚拟机Ubuntu16.04无法进入图形界面 The system is running in low-graphics mode
安装的虚拟机Ubuntu16.04 64位本可以正常使用,在安装了许多软件包(caffe)后不知哪里配置出现问题,出现The system is running in low-graphics mod ...
- Hadoop生态组件Hive,Sqoop安装及Sqoop从HDFS/hive抽取数据到关系型数据库Mysql
一般Hive依赖关系型数据库Mysql,故先安装Mysql $: yum install mysql-server mysql-client [yum安装] $: /etc/init.d/mysqld ...
- 51Nod1222 最小公倍数计数 数论 Min_25 筛
原文链接https://www.cnblogs.com/zhouzhendong/p/51Nod1222.html 题意 给定 $a,b$, 求 $$\sum_{n=a}^b \sum_{i=1}^n ...
- 清除代码中的svn文件。
@echo on color 2f mode con: cols=80 lines=25 @REM @echo 正在清理SVN文件,请稍候...... @rem 循环删除当前目录及子目录下所有的SVN ...
- HTML,js的基础知识
HTML 元素语法 HTML 元素以开始标签起始 HTML 元素以结束标签终止 元素的内容是开始标签与结束标签之间的内容 某些 HTML 元素具有空内容(empty content) 空元素在开始标签 ...
- 2019-2-25SqlServer 中所有表、列、视图、索引、主键、外键等常用sql
sp_help Accounts_Users 其中Accounts_Users 表示表名 sp_columns Accounts_Users exec sp_helpconstraint ...
- Django与Celery配合实现定时任务
一.前言 Celery是一个基于python开发的分布式任务队列,而做python WEB开发最为流行的框架莫属Django,但是Django的请求处理过程都是同步的无法实现异步任务,若要实现异步任务 ...
- 最大子矩阵和问题dp
给定一个矩阵 matrix,其中矩阵中的元素可以包含正数.负数.和0,返回子矩阵的最大累加和.例如,矩阵 matrix 为: 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 - ...
- QT杂记(网上资料整理而成)
1.新建工程时,Qwidget和Qdialog和Qmianwindow三者的区别? QWidget是所有图形界面的基类QMainWindow是一个提供了菜单.工具条的程序主窗口QDialog是对话框. ...
- CF_2018-2019 Russia Open High School Programming Contest (Unrated, Online Mirror, ICPC Rules, Teams Preferred)
只做了两个就去上课去啦... A. Company Merging time limit per test 1 second memory limit per test 512 megabytes i ...