js基础01
常见的五大浏览器: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的更多相关文章
- 【JavaScript从入门到放弃】JS基础-01
作为一个前端开发人员,JS是我们行走江湖吃饭的家伙.基本上一个前端人员能值多少大洋,就看JS了.虽然各种框架层出不穷,但是归根结底学好原生JS才是硬道理. 学习任何新东西其实都遵循 10000 小时成 ...
- 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 ...
- js 基础篇(点击事件轮播图的实现)
轮播图在以后的应用中还是比较常见的,不需要多少行代码就能实现.但是在只掌握了js基础知识的情况下,怎么来用较少的而且逻辑又简单的方法来实现呢?下面来分析下几种不同的做法: 1.利用位移的方法来实现 首 ...
- javascript基础01
javascript基础01 Javascript能做些什么? 给予页面灵魂,让页面可以动起来,包括动态的数据,动态的标签,动态的样式等等. 如实现到轮播图.拖拽.放大镜等,而动态的数据就好比不像没有 ...
- JS基础(超级简单)
1 JS基础(超级简单) 1.1 数据类型 1.1.1 基本类型: 1) Number:特别注意:NaN的检测方法:Nan!=NaN;或者使用isNaN方法 2) ...
- Web3D编程入门总结——WebGL与Three.js基础介绍
/*在这里对这段时间学习的3D编程知识做个总结,以备再次出发.计划分成“webgl与three.js基础介绍”.“面向对象的基础3D场景框架编写”.“模型导入与简单3D游戏编写”三个部分,其他零散知识 ...
- js基础和工具库
/* * 作者: 胡乐 * 2015/4/18 * js 基础 和 工具库 * * * */ //根据获取对象 function hGetId(id){ return document.getElem ...
- JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象
前 言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...
- 1、js基础内容
js基础内容 1. 编辑器 编译环境 浏览器 编辑软件 sublime DW H5Build Atom ==[注]尽可能多的去使用编辑器去编辑代码.== Html+css ==JS 逻辑== 比作建设 ...
随机推荐
- Ubuntu 14.04 安装 Sublime Text 3
1. 实验环境 Ubuntu 14.04 + Sublime text 3 2. sublime text介绍 ublime Text 是一款流行的文本编辑器软件,有点类似于TextMate,跨平台, ...
- python 的日志logging模块学习
1.简单的将日志打印到屏幕 import logging logging.debug('This is debug message') logging.info('This is info messa ...
- jS判断浏览器终端
在做移动端项目的时候,常常会遇到需要判断页面浏览终端的需求.要想判断是什么浏览器终端,先打印 navigator.userAgent 出来.所以收集了几种比较常用的方法: if(/(iPhone|iP ...
- 面向对象(OOP)--OOP基础与this指向详解
前 言 学过程序语言的都知道,我们的程序语言进化是从“面向机器”.到“面向过程”.再到“面向对象”一步步的发展而来.类似于汇编语言这样的面向机器的语言,随着时代的发展已经逐 ...
- Nodejs入门-基于Node.js的简单应用
服务端JavaScript 众所周知的,JavaScript是运行在浏览器的脚本语言,JavaScript通常作为客户端程序设计语言使用,以JavaScript写出的程序常在用户的浏览器上运行.直至N ...
- ubuntu6.04下安装Eclipse for C/C++ Development
ubuntu6.04下安装Eclipse for C/C++ Development 首先安装gcc/g++ 需要安装jdk,有的可以尝试安装openjdk. sudo apt-get install ...
- ios 指定页面禁用第三方键盘,使用系统的键盘
因为项目需要,需要在添加银行卡和提现页面使用数字键盘, 如果用户没有安装第三方键盘是没啥大问题的,但是如果用户手机安装了第三方的键盘的话,有时候会无法调用起第三方的数字键盘,或者第三方键盘样式不符合, ...
- CSS之 relative 特性
1. 自身特性: 如left,right,top,bottom定位都是相对于自身位置定位. 当left与right同时存在,lfet生效. 当top与bottom同时存在,top生效. 无侵入,保留原 ...
- MS-DOS命令dir命令详细解析
DOS命令窗口打开方式为Win+R键,打开运行命令,输入 cmd 即可:特殊情况我们要用管理员身份运行DOS,此时就可以在开始菜单-附件-DOS命令,鼠标右键单击命令提示符以管理员身份运行.如果是wi ...
- WPF DataGrid复制单元格问题
当复制出现 以下错误时:System.Runtime.InteropServices.COMException (0x800401D0),这是在WPF剪贴板程序错误. 解决方法:则在需要在App.xa ...