1、什么javascript?
为什么要学习?
处理网站动态特效
为后期课程打基础
什么是javascript?
是一个客户端的具有安全性脚本语言。
js和h5 的关系 :  都是向静态的元素动起来
h5+css3 偏向移动端
js偏向 pc端
 
2、js的历史背景
1995----布莱登.艾奇 liveScript 
改名  javascript 
javascript和java没有任何关系         
 
3、javascript的组成  掌握
ECMAScript  不是语言,是一个组织  欧洲计算机制造商协会 
BOM   浏览器对象模型
DOM  文档对象模型
 
4、js代码的实现  掌握
关闭代码提示 :  alt + ?
1、js代码在script中实现
2、script标签可以出现在页面的任何位置   除了title内部
3、script 标签可以有多个
4、使用script标签的src属性连接外部的js文件
5、带有src属性的script标签内部的js代码是无效
 
5、js的输出语句  掌握
alert()  弹出警告框  阻塞代码执行  不用于项目中
document.write()   浏览器上打印结果
console.log()   控制台上输出   一般用于项目调试
 
.  前面的叫做对象
.  后面的有括号的单词叫做方法   没有括号的单词叫做属性
 
6、js的字面量(常量)
数值常量
    整数
        十进制整数   
        二进制  0  1
        八进制  0--7   以0开头   
        十六进制 0--9   a--f   以 0x开头   颜色值组成 : # 
    小数
字符常量
    用单引号和双引号括起来的一串字符    
        "a"   "ab"  '9'   注意 : 使用时引号嵌套的问题   "  ''  "   或  '  "   " '
布尔值常量
    值有两个
    true  真 
    false 假
 
7、变量 
程序运行时  值有可能会发生变化的量
 
8、变量的定义和赋值
var 定义变量 
var 变量名 = 值 定义变量并赋值
var 变量名  定义变量没有赋值
 
9、标识符命名规范  重点
1、只能由字母、数字、下划线 或  $符号组成  (中文不提倡)
2、开头不能是数字
3、不能使用系统指定的关键字命名  
4、标识符尽量语义化   见名识意   
5、不要情绪化命名
6、驼峰式命名:
    小驼峰   qianFengJiaoYu
    大驼峰   QianFengJiaoYu
7、匈牙利命名:
    iScore  表示分数  是一个数值  i表示  int
    fScore  f表示float
    oBtn    o表示object
 
 
10、js输出语句的使用
1、输出变量时,变量一定不能加引号
2、输出字符串时,一定要加 引号
3、同时输出字符串和变量时,中间用+拼接
 
11、数据类型  重点记住
基本数据类型:
    数值类型 number
    字符类型 string
    布尔类型 Boolean
复合数据类型(引用数据类型):
    对象类型  object
特殊数据类型:
    null   空
    undefined 未定义   一个变量定以后未赋值,结果为undefined
    function 函数
12、确定变量类型  扩展
typeof 
用法 : 
typeof 变量 或 typeof(变量)
typeof的结果没有null,null本身就是一个对象  当typeof null 得到object 
typeof typeof 变量  结果都是字符串
 
13、运算符和表达式  重要
运算符 : 运算符号
表达式 : 常量、变量、一个由运算符连接的式子   
算术  赋值 关系  逻辑  条件
 
运算符有哪些?
表达式??
表达式的值确定??
 
14、算术运算符
运算符 : 
    双目(二元)运算符 : +   -   *   /  %(模)
    单目(一元)运算符 :++  --
表达式 :
    6+8
表达式的值:
            -   *   /  %(模)
            两边都是数值  正常计算
            两边有一侧是数字字符串,另一侧是数值,字符串会自动转成数值 正常计算
            两边都是纯数字字符串,字符串会自动转成数值 正常计算
            有一侧是非数字字符串,不能进行计算,结果是NaN
            不能正常计算的结果都是NaN     NaN:not  a  number 不是一个数
            NaN的typeof值  number ,NaN不等于任何数,包括自己
 
            %运算 : 
            7%5      7%7      13%5    78%10   123%10    7%1     897%10    76843%10
            扩展 :  -7%5 -2  7%(-5) 2  -7%(-5) -2
            任何数%10 结果都是 个位数          
            
+运算符表达式的值:
            字符串和数字相加表示连接     2+5+"9" -7
            +  加法计算和 连接  ,连接优先
 
 
单目运算符 : ++ 自增   -- 自减
注意 : 要求操作数必须是变量
9++   --9  错误的
 
var i = 10;
i++ 或 ++i 写法正确  
 
i++和++i区别 : 
相同点 : 自增变量都会加1  或  减 1
不同点 : 表达式的值不同
    如果++在变量前面, 先将自增变量的值自增1 , 再将自增变量的值赋值给整个表达式  先自增后赋值
    如果++在后面, 先将自增变量的值赋值给整个表达式,再将自增变量的值自增1   先赋值后自增
    
var i = 1;
计算下面表达式的值    程序运行时,变量一直会发生变化
        i++  +   ++i    +    i
        1             3           3
    i   2             3
 
var i = 1;
    计算表达式的值
    --i  +  i++   +   ++i
    0        0               2
i   0        1              2
15、赋值运算符
运算符 : =  
表达式 : =左侧必须是 变量    x+y = 10 错误的      y = 10-x 正确
变量的值就是表达式的值
 
复合赋值运算符 : 
   +=   -=   *=  /=     %= 
 x += 10;    等价于   x = x + 10;
16、关系运算符
运算符 :  >  >=  <  <=  == 等于   ===全等   !=不等于   !== 不全等
表达式 : 2>3     2==3    67 > 90
表达式的值 : 
    关系表达式的值为布尔值    
    关系表达式成立 结果为true,不成立  结果为false 
    1、两侧都是数字,正常比较
    2、两侧都是字符串,正常比较   利用字符的ASCII码 值比较 ,a--97  A--65   0--48
    3、一侧是数值,另一侧是数字字符串,字符串会自动转成数值,正常比较
    4、不能正常比较的结果就是false
==  比较值是否相等
===  先比较类型,后比较值
 
17、逻辑运算符
运算符 : 
    &&与   ||或    !非
表达式 :一般参与逻辑运算的都是布尔值
    true && false  true || true   4>3 || 6 == 8
表达式的值 : 
    &&与 : 表示 且 
    &&符号两侧都为真(成立) ,结果才是真   true&&true 结果是true    false && true 结果是false   true && false 结果是false
     
    ||或 :
    ||符号两侧都为假(不成立),结果才是假   false || false 结果是false   false || true 结果是true    true || false 结果是true
 
    ! 非 :
    非真就是假   !true 结果是false    
    非假就是真   !false 结果就是true
    
    例如:定义一个变量  值 大于等于10并且小于等于20
    var x = 11;
    console.log( x >= 10 && x <= 20 ); true
    定义一个变量,既能被2整除 又能被5整除
    var i = 10;
    console.log( i%2==0 && i%5 == 0 )

18、条件运算符

运算符 : ?  :  三目运算符   
表达式 :    表达式1 ?  表达式2 :  表达式3      5>6 ? 7:8
表达式的值:
    根据表达式1的值确定整个表达式的值
    如果表达式1的值为真,取表达式2的做作为整个条件表达式的值
        如果表达式1的值为假,取表达式3的做作为整个条件表达式的值
    console.log( 3==9 ? 23:12 )  结果 12
    console.log( 3<=9 ? 23:12 )  结果 23
    console.log( 1 ? 23:12 )  结果 23   console.log( 0 ? 23:12 )  结果 12     console.log( "" ? 23:12 )  结果 12   console.log( null ? 23:12 )  结果 12
 
js中表示真假的几种情况:
1、true为真  false为假
2、所有数字为真,0为假
3、所有字符串为真, 空串 为假 ""
4、所有对象为真
5、所有函数为真
6、null 和 undefined 为假

javaScript基础--概念以及使用的更多相关文章

  1. JavaScript基础概念与语法

    学习了一些最基础的JavaScript语法: <!DOCTYPE html> <html lang="en"> <head> <meta ...

  2. JavaScript基础概念

    1.JavaScript在浏览器中是解释执行的: 2.JavaScript是一中弱类型的语言,在使用变量前,可以不用先申明: 3.JavaScript使用了对象对象程序设计思想: 4.JavaScri ...

  3. javaScript基础概念小知识点集

    数据类型 typeof是一个操作符而不是函数,因此例子中圆括号尽管可以使用,但不是必须的. 只要在保存对象的变量还没有真正保存对象,就应该明确的让该变量保存null NaN是一个特殊的数值,与任何值都 ...

  4. 什么是JavaScript闭包终极全解之一——基础概念

    本文转自:http://www.cnblogs.com/richaaaard/p/4755021.html 什么是JavaScript闭包终极全解之一——基础概念 “闭包是JavaScript的一大谜 ...

  5. JavaScript随笔记(一)基础概念以及变量类型

    一.JavaScript中的基础概念 1.defer属性 一般我们在引用外部js文件的时候往往是将引用文件的位置放在标签当中,比如那么在标签中引入多个js文件时,浏览器会按照引入顺序加载执行这些引入的 ...

  6. 《JavaScript核心概念》基础部分重点摘录

    注:<JavaScript核心概念>适合深入了解JavaScript,比我买的<JavaScript框架设计>语言和内容丰富多了(可能是我水平尚浅吧). 1. 作用域 var ...

  7. 一步步学习javascript基础篇(0):开篇索引

    索引: 一步步学习javascript基础篇(1):基本概念 一步步学习javascript基础篇(2):作用域和作用域链 一步步学习javascript基础篇(3):Object.Function等 ...

  8. 前端之JavaScript基础

    前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...

  9. 一步步学习javascript基础篇(3):Object、Function等引用类型

    我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...

随机推荐

  1. C#与.NET Framework c#编程语言,和java是一样的。(c#,java) -->javaweb,asp.net

  2. uva live 7635 National Bomb Defusing Squad

    题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_ ...

  3. oracle 表连接 - sort merge joins 排序合并连接

    https://blog.csdn.net/dataminer_2007/article/details/41907581一. sort merge joins连接(排序合并连接) 原理 指的是两个表 ...

  4. Zipf's law

    w https://www.bing.com/knows/search?q=马太效应&mkt=zh-cn&FORM=BKACAI 马太效应(Matthew Effect),指强者愈强. ...

  5. C#和.NET获取绝对路径

    c#获取绝对路径:System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "log.txt"); .net获取绝 ...

  6. mysql_存储引擎层-innodb buffer pool

    buffer pool 是innodb存储引擎带的一个缓存池,查询数据时,首先从内存中查询 数据如果内存中存在的话直接返回. innodb buffer pool 和 qcache 的区别:Qcach ...

  7. 转战 rocketmq

    接触 kafka 有一段时间了,一个人的力量实在有限,国内 rocketmq 的生态确实更好,决定换方向. rocketmq 文档地址:http://rocketmq.cloud/zh-cn/docs ...

  8. Docker安装及部署实例.Net Core

    1.什么是Docker Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱 ...

  9. cookie/http/https

    今天再学习顺便外加复习下http的相关知识,顺便试试在笔记中导出一个长篇的图片回事怎么样的效果. HTTP相关知识,不是很全仅供参考

  10. 2019_Chrome和ChromeDriver对应关系

    Chrome和ChromeDriver对应关系 ChromeDriver下载地址:http://chromedriver.storage.googleapis.com/index.html Chrom ...