JS系列:编程语言

1.编程语言
html+css标记语言
js:轻量级的交互语言->全栈编程语言
- 面向对象:
+ C++
+ JAVA
+ PHP
+ C# (.net doc)
+ JS
- 面向过程
+ C
java与javascript没有关系
2.js学习哪些部分?
- ECMAScript(es) 艾克马 斯奎普特
- DOM :document object model 文档对象模型
API(属性和方法)让JS可以获取操作页面中的dom元素
- BOM :browser object model 浏览器对象模型。提供各种api,让js操作浏览器
3.变量(varible)
它不是具体的值,只是用来存储具体值的容器,值可以改变。
基于es语法规范,js创建变量
- var (es3)
- function (es3) 创建函数,函数也是变量,存储的值是函数类型
- let (es6)创建变量
- const (es6)
- import 基于es6的模块规范导出需要的信息
- class 基于es6创建类
```
var [变量名]=值; var num = 12;
let [变量名]=值;
const [变量名]=值;
function 函数名(){ function Fn(){}
}
...
var n = 13;
n= 14;
alert(n+10); =>弹出来24,此时n代表14;

const m = 100;
m = 200; =

```
创建变量命名:语义化更强一下 add/ create / insert / delete(del) / update /remove(rm) / info / detali
- 严格区分大小写
- 遵循驼峰式写法,按照数字,字母,下划线,$,命名(数字不能作为开头);英文命名单词拼成完整的名字,第一个单词小写,其余有意义的单词首字母大写
- 不能使用(特殊含义)关键字和(未来可能会成为关键字的叫)保留字
```
var n = 12;
var N = 13;//=>两个n不是同一变量
var studentInfo / student_info / _studentInfo (_下划线在前,都是公共变量)
$studentInfo (一般存储jquery元素)
```
- 基本数据类型
+ 数字number 布尔boolean null 字符串string undefined
- 引用数据类型
+ 对象object
+ 普通对象 数组对象 正则对象 日期对象

+ 函数function
- es6中新增的特殊类型 symbel 唯一值
```
var n = 13;//=>0 -13 12.2 数字中有个特殊的值NaN(not a number)表示一个不是有效的数字 ,但属于number类型
var s = '';//=>"" '12' "{}" 引号包裹起来的都是字符串有0到多个字符组成

var b = true;=>布尔2个值true和false假
[引用数据类型]
var o = {name : '珠峰',age: 9};//=>普通对象:大括号包裹多组属性和属性值 {} 空对象
var ary = [12 ,23,24,25] ;//=>中括号包裹起来多项内容是数组,0到多项内容 []空数组
var reg = /-?(d|([1-9]d+))(.d+)?/g ;=>有元字符组成的一个完整的正则 // 不是正则是单行注释
function fn (){

}
symbel 创建出来的是唯一值
var a = Symbel ('珠峰');Symbol 不是字符串
var b = Symbel ('珠峰');"Symbol" 是字符串
a==b; ->false
```
- 【代码如果运行】
- 浏览器内核来渲染解析
- 基于node来运行基于v8引擎渲染,解析js工具 // 通过cmd 基于node运行当前文件
- 【输出结果】
- alert :弹出方式浏览器提示框 window.alert 全称 输出结果全部转化为字符串
- alert(1+1);=> '2'
alert ([12,23]);=>'12,23'
[12,23].toString() =>"12,23"
alert({name: 'xxx'}); =>'[oject object]' 对象toString后的结果就是object object对象为啥?

- confirm : 确认提示框,有确认和取消按钮
```
var flag = confirm('确认要退出吗?');
if(flag){
//=>flag:true 用户端点击的事确认按钮
} else {
//=>flag:false 用单击的是取消按钮
}
```
- prompt :在confirm基础上加上输入框
var num =12;
var flag =prompt(num);
alert(flag);
- console.log:在浏览器控制台输入日志(fn+f12)
/* 快捷键:num.log TAB*/
+ Elements:显示和修改当前页面中的元素和样式
+ consloe :控制台,js代码中.log输出到这里,也可以直接编写js
+ console.dir :比log输出详细一些(输出对象数据值的时候)
- console.table: 把json数据按照表格的方式输出
- console.log(' 普通输出~ ');
console.warn(' 输出警告! ');
console.error(' 输出错误!!! ');

 
原文地址:https://www.cnblogs.com/fron-tend/p/11946811.html