常见的五大浏览器:chrome firfox ie opera safari

浏览器的解析器会把代码解析成用户所能看到的东西

www.2cto.com/kf/201202/118111.html浏览器工作原理

js的组成以及特点

JavaScript简称为JS
js的组成:ECMAScript标准----基本的语法和对象
DOM:Document Object model 文档对象模型
Bom:broswer Object model 浏览器对象模型

JS是一门脚本语言:不需要编译
编译:把代码转换成计算机所认知的二进制语言
JS是一门弱类语言:声明变量都用Var
JS是一门动态语言:变量可以认知当前的这个变量到底是什么类型
JS是一门解释性语言

JS拥有跨平台性

JS原名是LiveScript

布莱登.艾奇

JS最初的目的:解决浏览器和服务器之间交互的问题(比如:验证密码)
JS现在能做什么?
交互问题、特效、游戏、移动APP开发

HTML:展示信息
CSS:美化页面
JS:实现浏览器和服务器交互,有计算和验证的能力
CMD t-sql vbscript都属于脚本语言,不需要编译

JS点出来的东西未必能用,点不出来的东西或许可以用

JS的基本注意问题
1.声明变量有大小写之分;var n=10;console.log(N);
2.弱类型语言,声明都用var
3.字符串用单引号或者双引号都可以(JS中的单引号或者双引号都表示字符串)
推荐用双引号(逼不得已用单引号---和DOM结合的时候,和html嵌套的时候)
4.每行代码结束用分号

js重的注释:
1.单行注释//
2.多行注释/* 注释的内容 */

HTML重的注释<!-- -->
css中的注释和JS中的多行注释一样
注释中的代码不解析不执行

JS的代码在哪写:在script中写,可以卸载HTML页面重的任何位置,一般在head标签中写,也在body标签中写(一般放在body最后),可以写多个script
JS可以外链

js代码注意事项:如果在script代码出错了,会影响到该对的script标签后面的代码执行
但不会影响后面的script标签中的内容

不要再引入外部的js文件的script
内嵌的script不易于开发和维护

异步和同步:
异步:多个人做多件事
同步:一个人有顺序的做多件事

script标签中有两个属性:async defer 都是异步
async属性的值就是自己 :页面加载就开始下载文件,下载完毕后立刻执行
defer属性就是自己:页面执行完毕后再开始下载文件,然后执行

一般在html标签中如果属性和值就是自己,并且只有一个,那么值可以省略

异或运算
10 1010
20 10100
相同则为0 不同则为1

num1 = num1^num2 1010
10100
11110=30

num2=num1^num2
11110
10100
01010=10

num1=num1^num2
11110
1010
10100=20
console.log(num1,num2);

变量名命名的规范:由字母,下划线或者$符号开头,中间包含
字母、下划线或者$或者数字;推荐变量名最好不要以$符号开头--
--要学习JQ,里面都是$符号开头

变量名要有意义,最好用单词,如果单词不会用拼音,千万不要用简写的方式
变量名都是小写的,如果这个变量名是多个单词组合的,那么第一个单词的第一个字母与
要小写,后面的单词的第一恶字母要大写----驼峰命名法

变量的初始化:声明一个变量并且赋值
js重的原始数据类型:Number String Boolean Null undefined Object
Null值只有一个null
undefined类型的值只有一个undefined
boolean(bool)布尔类型,值有两个:true false 1或0 ,针或者假
一般1表示男 0 表示女

什么情况下变量值为undefined,结果为undefined,未定义的情况下
如果一个函数没有明确的返回值,接收结果了,也是undefined

显示变量名typeof 变量名 typeof(变量名)
如果想要使用变量,最好先判断变量的类型是不是undefined或者是不是null

如果一个变量的值是 八进制 十进制 十六进制 会议十进制输出
不要用小数验证小数
Infinity 无穷大 -Infinity小

字符串:string类型,可以用单引号也可以用双引号
字符串特性:不可变(讲字符串对象的时候配合堆内存空间讲解)

其他类型转布尔类型:
非零数值转布尔类型是true,0转为flase
非空字符串是true 空字符串是flase

当一个变量声明了没有赋值,是undefined
当一个变量声明了没有初始化,是undefined

数据类型转换:
1.其他类型转数字类型
Number(变量)
parseInt(变量)转整数
parseFloat(变量)包括小数
小数转整数丢失精度

2.其他类型转字符串类型
.toString()
String()
3.其他类型转布尔类型

运算符:
算术运算符:+ - * / %
算术运算表达式:首先是一个表达式,由算术运算符连接起来的表达式
叫作算术运算表达式
一元运算符:++ -- ++num num++ --num num--
一元运算表达式:由一元运算符连接起来的表达式叫作亿元运算符表达式
三院运算符:? :
复合运算符:+= -= *= /= %=
比较运算符:< > >= <= === != !==
比较运算表达式的结果是布尔类型;
逻辑运算符: && || !
逻辑运算表达式的结果是布尔类型

流程控制:控制代码执行的顺序

顺序结构:代码从上到下,从左到右(有时候从右到左)执行
分支结构:if语句,if-else语句,if-else if-else if...else语句
switch-case语句,三元表达式
循环结构:while和do while
单行注释一般在一行代码上,多行注释一般会在函数、方法、构造函数上使用

js基础01的更多相关文章

  1. 【JavaScript从入门到放弃】JS基础-01

    作为一个前端开发人员,JS是我们行走江湖吃饭的家伙.基本上一个前端人员能值多少大洋,就看JS了.虽然各种框架层出不穷,但是归根结底学好原生JS才是硬道理. 学习任何新东西其实都遵循 10000 小时成 ...

  2. 01慕课网《进击Node.js基础(一)》Node.js安装,创建例子

    版本:偶数位为稳定版本,基数为非稳定版本 - 0.6.x - 0.7.x    - 0.8.x -0.9.x    -0.10.x  -0.11.x 概念:Node.js采用谷歌浏览器的V8引擎,用C ...

  3. js 基础篇(点击事件轮播图的实现)

    轮播图在以后的应用中还是比较常见的,不需要多少行代码就能实现.但是在只掌握了js基础知识的情况下,怎么来用较少的而且逻辑又简单的方法来实现呢?下面来分析下几种不同的做法: 1.利用位移的方法来实现 首 ...

  4. javascript基础01

    javascript基础01 Javascript能做些什么? 给予页面灵魂,让页面可以动起来,包括动态的数据,动态的标签,动态的样式等等. 如实现到轮播图.拖拽.放大镜等,而动态的数据就好比不像没有 ...

  5. JS基础(超级简单)

    1     JS基础(超级简单) 1.1 数据类型 1.1.1   基本类型: 1)        Number:特别注意:NaN的检测方法:Nan!=NaN;或者使用isNaN方法 2)       ...

  6. Web3D编程入门总结——WebGL与Three.js基础介绍

    /*在这里对这段时间学习的3D编程知识做个总结,以备再次出发.计划分成“webgl与three.js基础介绍”.“面向对象的基础3D场景框架编写”.“模型导入与简单3D游戏编写”三个部分,其他零散知识 ...

  7. js基础和工具库

    /* * 作者: 胡乐 * 2015/4/18 * js 基础 和 工具库 * * * */ //根据获取对象 function hGetId(id){ return document.getElem ...

  8. JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象

       前   言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...

  9. 1、js基础内容

    js基础内容 1. 编辑器 编译环境 浏览器 编辑软件 sublime DW H5Build Atom ==[注]尽可能多的去使用编辑器去编辑代码.== Html+css ==JS 逻辑== 比作建设 ...

随机推荐

  1. HTTPS与MITM

    HTTPS:基于SSL/TSL的HTTP协议 MITM:Man-In-The-Middle中间人攻击 Https下中间人攻击的思路: 1 去https化 2 向CA申请相似域名的证书 防范: 睁大双眼

  2. C语言 流缓冲

    **From : https://www.gnu.org/software/libc/manual/html_node/Stream-Buffering.html** 12.20 流缓冲 通常情况下, ...

  3. 浅谈oracle树状结构层级查询测试数据

    浅谈oracle树状结构层级查询 oracle树状结构查询即层次递归查询,是sql语句经常用到的,在实际开发中组织结构实现及其层次化实现功能也是经常遇到的,虽然我是一个java程序开发者,我一直觉得只 ...

  4. linux 远程操作(expect)

    Expect是在Tcl基础上创建起来的,它还提供了一些Tcl所没有的命令,它可以用来做一些linux下无法做到交互的一些命令操作,在远程管 理方面发挥很大的作用. spawn命令激活一个Unix程序来 ...

  5. win10 uwp 装机必备应用 含源代码

    zhxilin大神说http://www.cnblogs.com/zhxilin/p/4819372.html这文章说到了使用await Windows.System.Launcher.LaunchU ...

  6. git无法pull仓库refusing to merge unrelated histories

    本文讲的是把git在最新2.9.2,合并pull两个不同的项目,出现的问题如何去解决fatal: refusing to merge unrelated histories 我在Github新建一个仓 ...

  7. zabbix杂文二

    ps1:主要是一些遇到的问题,不一定对所有人都有用... PS2:安装前就一定要去看下官方文档 PS3:安装zabbix的时候会参照这上面的 http://blog.chinaunix.net/uid ...

  8. python-opencv aplpha混合

    import cv2 import os import numpy as np print os.listdir(os.getcwd()) img = cv2.imread('building.jpg ...

  9. C#,COM口,接收,发送数据

    这里写一种,COM口的数据接收,发送方法. 1.COMHelper类 /// <summary>初始化串行端口</summary> private SerialPort _se ...

  10. ELK系列~对fluentd参数的理解

    这段时候一直在研究ELK框架,主要集成在对fluentd和nxlog的研究上,国内文章不多,主要看了一下官方的API,配合自己的理解,总结了一下,希望可以帮到刚入行的朋友们! Fluentd(日志收集 ...