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(' 输出错误!!! ');
 

JS系列:编程语言的更多相关文章

  1. Ember.js系列文章

    JS前端框架之Ember.js系列文章 本文为文章索引,主要是罗列Ember.js的相关文章便于阅读. 相关演示代码:github for free. 基础篇 1. EmberJs之What|Why| ...

  2. 【D3.V3.js系列教程】--(十四)有路径的文字

    [D3.V3.js系列教程]--(十四)有路径的文字 1. 在 svg 中插入一個 text // 在 body 中插入一個 svg var svg = d3.select('body').appen ...

  3. 【D3.V3.js系列教程】--(十五)SVG基本图形绘制

    [D3.V3.js系列教程]--(十五)SVG基本图形绘制 1.path <!DOCTYPE html> <html> <head> <meta charse ...

  4. 【D3.V3.js系列教程】--(十二)坐标尺度

    [D3.V3.js系列教程]--(十二)坐标尺度 1.多种类型的缩放尺度 Quantitative Scales Linear Scales Identity Scales Power Scales ...

  5. node.js系列笔记之node.js初识《一》

    node.js系列笔记之node.js初识<一> 一:环境说明 1.1 Linux系统CentOS 5.8 1.2 nodejs v0.10.15 1.3 nodejs源码下载地址 htt ...

  6. 微信JS图片上传与下载功能--微信JS系列文章(三)

    概述 在前面的文章微信JS初始化-- 微信JS系列文章(一)中已经介绍了微信JS初始化的相关工作,接下来本文继续就微信JS的图片上传功能进行描述,供大家参考. 图片上传 $(function(){ v ...

  7. 微信JS分享功能--微信JS系列文章(二)

    概述 在上一篇文章微信JS初始化-- 微信JS系列文章(一)中已经介绍了微信JS初始化的相关工作,接下来本文继续就微信JS的分享功能进行描述,供大家参考. 代码 $(document).ready(f ...

  8. js系列教程2-对象、构造函数、对象属性全解

    全栈工程师开发手册 (作者:栾鹏) 快捷链接: js系列教程1-数组操作全解 js系列教程2-对象和属性全解 js系列教程3-字符串和正则全解 js系列教程4-函数与参数全解 js系列教程5-容器和算 ...

  9. js系列教程1-数组操作全解

    全栈工程师开发手册 (作者:栾鹏) 快捷链接: js系列教程1-数组操作全解 js系列教程2-对象和属性全解 js系列教程3-字符串和正则全解 js系列教程4-函数与参数全解 js系列教程5-容器和算 ...

  10. Node.js系列-http

    前言: 最近一直忙着公司项目的事,战友们的留言也没空回复,博客也有段时间没有更新了,年底了就是一个的忙啊~~~(ps:同感的也给个赞吧) 现在前端的就是一直地更新一直有新的东西出来,什么ES2015, ...

随机推荐

  1. rune 数据类型

    // rune is an alias for int32 and is equivalent to int32 in all ways. It is // used, by convention, ...

  2. vue基于页面中按钮权限控制

    main.js // 权限 /** 权限指令,对按钮权限的控制 **/ Vue.directive('allow', { bind: function(el, binding) { // 通过当前按钮 ...

  3. 面向开发人员的Windows错误报告(WER)

    Windows错误报告是更新的Windows XP上Dr.Watson的替代品.它监视故障并收集可以发送到要分析的服务器(如果用户允许)的有用信息.这项功能帮助微软修复了很多错误——由于收到的报告,微 ...

  4. 【数论】[素数筛,phi]P3601签到题

    题目描述 给出l,r,要求求出\(\sum_{i = l}^r (i - phi[i]) mod 666623333\) \(1\leq l\leq r\leq 10^{12}\),\(r - l \ ...

  5. 前端零基础入门:页面结构层HTML(2)

    学习笔记 若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理. 请点赞!因为你们的赞同/鼓励是我写作的最大动力! 欢迎关注达达的简书! 这是一个 ...

  6. gethostname、gethostbyname

    gethostname():返回本地主机的标准主机名 原型: #include<unistd.h> int gethostname(char *name, size_t len); 参数说 ...

  7. js 数组元素位置互换

    如下实现的是,先将数组反转,然后将第二个元素与倒数第三个元素位置互换 ,,,,,,,); arr.reverse(); two=arr.splice(,,); three=arr.splice(-,, ...

  8. 矩阵的五种分解的matlab实现

    由于这学期修了矩阵分析这门课,课程要求用matlab实现矩阵的5种分解,仅仅是实现了分解,上传到博客存档,万一哪天某位同学就需要了呢.. 1.矩阵的满秩分解 代码实现 %矩阵的满秩分解 clear % ...

  9. OpenFOAM——圆筒壁稳态导热

    对于圆筒壁的稳态导热,温度分布的解析解为: IN为恒温边界,设置为300K,OUT也为恒温边界,设置为500K 固体导热系数为:0.0887W/(m·K) 首先进行建模操作,任何建模软件均可,本算例采 ...

  10. eclipse Target runtime com.genuitec.runtime.generic.jee50 is not defined

      1.情景展示 报错信息如下: 2.原因分析 使用eclipse导入myeclipse时,唯独这个报错信息改不了. 需要通过修改这个项目的配置文件才行. 3.解决方案 第一步:切换到导航视图: 第二 ...