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. 【学习心得】Link-cut Tree

    Link-cut Tree是一种支持改变树(森林)的形态(link和cut),同时维护树的路径上节点信息的数据结构.lct通过splay来维护每次的perferred path,说白了就是一个动态的树 ...

  2. php日志托管给apache处理

    php.ini配置: log_errors = On;不显示错误display_startup_errors = Offdisplay_errors = Off ;除了notice级别错误外,报告所有 ...

  3. bootstrap-multiselect 设置单选无效(设置单选依然是复选框)

    bootstrap-multiselect 的使用介绍:https://www.cnblogs.com/landeanfen/p/5013452.html bootstrap-multiselect ...

  4. Csharp随机生成序列码的方式Guid方法

    主要用于邮箱激活,加密等用处 Guid.NewGuid().ToString()得几种格式显示 .Guid.NewGuid().ToString("N") 结果为: 38bddf4 ...

  5. 关于VMware 15搭建MacOS 10.14后无法播放在线视频和客户端视频的问题

    最近在自己的电脑上搭建了MacOS10.14系统,搭建是成功了,但是发现一个很坑的事,看视频发现黑屏.就是那种只有声音,没有视频的问题,在多个浏览器上和客户端都是一样的.百度了下,总结有2种可能,一是 ...

  6. WIN10系统和压缩内存占用磁盘过高的解决方案(亲测有效)

    系统和压缩内存磁盘占用过高的解决方案 最近一段时间玩游戏看视频经常莫名的卡顿,观察发现电脑卡的时候,WIN10进程中的"系统和压缩内存"一项占用了近100%的磁盘空间. 百度搜索到 ...

  7. [BZOJ3236]:[Ahoi2013]作业(莫队+分块)

    题目传送门 题目描述 此时已是凌晨两点,刚刚做了$Codeforces$的小$A$掏出了英语试卷.英语作业其实不算多,一个小时刚好可以做完.然后是一个小时可与做完的数学作业,接下来是分别都是一个小时可 ...

  8. postgresql获取表最后更新时间(通过表磁盘存储文件时间)

    一.创建获取表更新时间的函数 --获取表记录更新时间(通过表磁盘存储文件时间) create or replace function table_file_access_info( IN schema ...

  9. 【adb真机查Log】Android Studio 3.X 找不到Android Device Monitor

    参考来源:https://blog.csdn.net/yuanxiang01/article/details/80494842 以下信息来源于Android Developers官网 Android设 ...

  10. leetcode-mid-array-49 Group Anagrams

    mycode  95.35% 思路:构建字典 class Solution(object): def groupAnagrams(self, strs): """ :ty ...