JavaScript用来干什么

  1. 数据的验证
  2. 将动态的内容写入到网页当中(ajax)
  3. 对事件做出相应
  4. 读写html当中的内容
  5. 检测浏览器
  6. 创建cookies
  7. 模拟动画

语法特点

  • 基于对象和事件驱动的松散型的解释性语言
  1. 面向对象开发
  2. 事件驱动
  3. 松散型 弱类型
  4. 解释性语言。由浏览器解释执行

JavaScript的组成部分

  1. ECMAscript语法
  • 数据类型,运算符,流程控制,函数,面向对象
  1. BOM浏览器对象模型
  2. DOM文档对象模型

难点

  • 语法的松散自由型
  • 各个浏览器的兼容

调试工具

  • alert('这是一个弹窗');
  • document.write('输出到页面中');
  • document.write('
    我是h6

    ');

  • prompt("提示信息","显示框");
  • console.log("输出到控制台");

JavaScript引入方式

  • script标签对,嵌入到页面中任意位置
  • 超链接或者是重定向的位置

    <a href="javascript:alert('重定向')">我是重定向</a>
  • 事件后面

    <div onclick="alert('事件后面')">这是事件</div>
  • 引入外部js文件

    <script src="index.js"></script>

js可以在页面中的任意位置引入,他们是一个整体可以相互联系,相互影响;在引入外部js文件中,不能出现<script></script>,在页面<script src=""></script>标签中不能出现js代码

JavaScript的命名规范

  • 严格区分大小写
  • 变量由数字,字母,下划线,$组成,不允许数字开头
  • 不能用关键字或保留字命名
  • 命名习惯 驼峰命名法 首字母大写
  • 命名要有一定意义
  • ;语句结束

变量的声明及赋值

  • 先声明后赋值
  • var a;a=1
  • 声明同时进行赋值
  • var a=1;
  • 一次声明多个变量,然后赋值
  • var a,b,c; a=1;b=2;c=3
  • 一次性声明多个变量的同时赋值
  • var a=1,b=2,c=3;

栈区(内存小运行快) 堆区(内存大运行慢) 静态区 代码段

0开头的数字(8进制)

数据类型(2种)

  • typeof()检测数据类型,返回值是字符串

初始数据类型:

  • undefind

    变量声明后没有赋值,默认值undefined
  • null

    typeof的结果是object,表示什么都没有,占位符
  • boolean

    true false 结果是boolean
  • number

    整型,浮点型;二进制,八进制,十六进制,十进制,科学计数法,特殊值

    Number.MAX_VALUE 最大值,

    Number.MIN_VALUE 最小值。
  • string

    '' ""包围的值,就是一个字符串

单双引号效率一样;单双引号成对出现;可以相互嵌套,不能交叉嵌套;特殊字符\b \n \t \r \'' \"" \\ \

引用数据类型

  • object

运算符

 表达式:运算符和操作数的组合成为表达式

算术运算符(1)

+ - * / %(取余) var++(先运行后自增) ++var(先自增后运行) var-- --var

10%3 余数为1

  • %
  • 用来取某个数的余数
  • 用于取一定范围的值
  • 一般不用小数,因为结果不确定
    • 四则运算
    • 字符串连接,任意的数据类型都可以和字符串连接,连接之后结果是字符串。

    12.27

    关系运算符(比较运算符)(2)

    < > <= >= == === != !==

    运算结果是布尔值

    == 比较两个数的值是否相等 =不但要比较值是否相等,还比较类型是否相等 false0 true==1

    比较规则

    • 两个数值比较,正常比较
    • 两个字符串进行比较时,比较第一个字符所对应的ASCll
    • 数字和字符串在进行比较时,字符串尝试转换成数字进行比较,如果转换不成功返回NAN,整个表达式返回false
    • undefined==null
    • 数值和布尔值进行比较时,布尔值转化为true,1 false,0

    赋值运算符(3)

    = += -= *= /= %=

    a++ a=a+1 a+=1

    逻辑运算符(4)

    与and&& 或or|| 非not!

    &&

    同时为真,结果为真。只要有一个为假,结果就为假

    • ||

    只要有一个为真,结果为真。全假,结果为假

    取反。真-->假 假-->真

    • 逻辑运算符可以对任何类型的数据进行运算但是在运算的

      时候,可以转换为对应的布尔值 Boolean
    • Undefined false
    • Null false
    • Boolean 就是本身的值
    • Number 除了0以外都是真的
    • String 除了空字符串以外都是真的
    • 对象 真的

    一元运算符(5)

    typeof +(正) -(负) delete new ++ --

    • typeof()获取数据类型
    • delete删除对象的方法或属性
    • new用来创建一个对象

    三元运算符(6)

    格式:var 变量=布尔值?条件为真的值:条件为假的值

    根据表达式的计算结果有条件的为变量赋值

    特殊运算符(7)

    • , ()
    • 用来一次声明多个变量
    • ()
    • 在运算的时候有优先级的作用
    • 可以让函数运行

    Javascript用途,语法特点,难点,调试工具,引入方式,命名规范,变量声明及赋值,数据类型,运算符的更多相关文章

    1. javascript 变量 命名规范 变量的作用域

      原文:javascript 变量 命名规范 变量的作用域 大家好,我是小强老师,今天讲解的是变量 变量 小时候我们学过  这个 应用题 :  X+1=2; 问  X 等于几?  答案是 1 对了,很聪 ...

    2. JavaScript 引入方式 语言规范 语言基础 数据类型 常用方法 数组 if_else 比较运算符 for while 函数 函数的全局变量和局部变量 {Javascript学习}

      Javascript学习 JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript ...

    3. JavaScript变量声明及赋值

      1.变量声明 var a; //声明一个变量 a var b,c,d; //同时申明多个变量时,变量名之间用逗号隔开 console.log(a); //在控制台显示变量a的值,输出为undefine ...

    4. CSS最基础的语法和三种引入方式

      **CSS语法** CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明.选择器通常是您需要改变样式的 HTML 元素. selector {declaration1; declaration ...

    5. Python 语法特点:注释/编写规则/命名规范

      1.注释 1)单行注释     # 2) 多行注释   前后三个单引号或双引号   ‘’‘  ...  '''    """  ...""" ...

    6. JavaScript基础语法资料

      JavaScript基础第01天 1 - 编程语言 1.1 编程 编程: 就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程. 计算机程序: 就是计算机所执行的一系列的 ...

    7. python 全栈开发,Day50(Javascript简介,第一个JavaScript代码,数据类型,运算符,数据类型转换,流程控制,百度换肤,显示隐藏)

      一.Javascript简介 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) Jav ...

    8. 前端JavaScript(1) --Javascript简介,第一个JavaScript代码,数据类型,运算符,数据类型转换,流程控制,百度换肤,显示隐藏

      一.Javascript简介 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) Jav ...

    9. {前端CSS} 语法 Css的几种引入方式 css选择器 选择器的优先级 CSS属性相关 背景属性 边框 CSS盒子模型 清除浮动 overflow溢出属性  定位(position)z-index

      前端CSS CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表来对文 ...

    随机推荐

    1. HZOJ 星际旅行

      正解欧拉路,其实看完题解还是挺简单的,由于对欧拉路这种东西没怎么接触过,所以考试时没想出来,知识还是有漏洞啊. 另外这题的题解写的也不是很清楚(可能大佬作者觉得这是一道送分题……),首先判断联通(注意 ...

    2. 模板—中国剩余定理+拓展GCD

      int exgcd(int a,int b,int &x,int &y) { ) { x=,y=; return a; } int gcd=exgcd(b,a%b,x,y); int ...

    3. iptables 网址转译 (Network Address Translation,NAT)

      当封包流经NAT電腦時,其位址/通訊端口會被修改,以達到改变包目的地(或旅程),或是让目的地误以为包是源自NAT电脑的效果.換言之,对封包执行NAT的电脑,可以成为新包的来源或目的地,或是成为真正来源 ...

    4. [kuangbin带你飞]专题九 连通图B - Network UVA - 315

      判断割点的性质: 如果点y满足 low[y]>=dfn[x] 且不是根节点 或者是根节点,满足上述式子的有两个及其以上. 就是割点 如果是起点,那么至少需要两个子节点满足上述条件,因为它是根节点 ...

    5. 【b801】笨小猴

      Time Limit: 1 second Memory Limit: 50 MB [问题描述] 笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼.但是他找到了一种方法,经试验证明,用这种方法去选 ...

    6. [转]Spring历史版本变迁和如今的生态帝国

      前两篇: 为什么要有Spring? 为什么要有Spring AOP? 前两篇从Web开发史的角度介绍了我们在开发的时候遇到的一个个坑,然后一步步衍生出Spring Ioc和Spring AOP的概念雏 ...

    7. Jackson-deserialization fails on circular dependencies(JackSon无限递归问题)

      Ok, so I'm trying to test some stuffs with jackson json converter. I'm trying to simulate a graph be ...

    8. H3C RIP可选配置

    9. Fast Stone截图工具使用教程

      下面是Fast Stone的显示面板,很小巧,但功能强大 一.特殊功能 1.1 添加水印 (1)选择功能栏的"Edge" (2)将要水印的图片选中,选择水印图片的放置位置,应用即可 ...

    10. PowerShell 拿到显卡信息

      本文告诉大家如何在 PowerShell 通过 WMI 拿到显卡信息 在 PowerShell 可以使用下面代码拿到显卡的信息 Get-WmiObject Win32_VideoController ...