1 什么是JavaScript?

是一种嵌入在网页中的程序段。
是一种解释型语言,被浏览器解释执行。
由Netscape发明,ECMA(欧洲计算机制造商协会)将其标准化。
JavaScript借用了Java的名字,但它和java没有关系。
出于安全性考虑,增加了JavaScript的限制
增强客户端的交互功能。
JavaScript与java的区别:
JS只在浏览器中执行,java可在各种平台上执行。
JS也有变量,常量,运算符,关键字,数据类型,语句等。
JS借用了Java的语法,其运算符和表达式与Java非常相似。

2 JavaScript能做什么?
可以使用JS添加、删除、修改网页上的所有元素及属性。
在HTML网页中动态写入文本。
响应网页中的事件,并做出相应处理。
可用于较验客户端提交的数据。
检测浏览器类型及版本。
(判断浏览器类型:)

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>跨浏览器编程</title><script type="text/javascript">function browserType(even){if(window.event){//判断是不是IE浏览器
              document.getElementById('p1').innerHTML='IE';}else if(even){//判断是不是DOM兼容浏览器
               document.getElementById('p1').innerHTML='DOM' ;}}</script>
</head>
<body>
<button onclick="browserType(event);"> Hello JavaScript Event Object</button>
<p id="p1">到底是什么浏览器呢</p>
</body>
</html>

View Code

处理Cookie.
3 JavaScript的技术体系
核心语言定义
原生对象和内置对象
BOM(浏览器对象模式)
DOM (文档对象模式)
事件处理模型
4 将JavaScript添加到XHTML文档中
使用script元素在XHTML文档中直接嵌入JavaScript语句---方便

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6 </head>
 7 <body>
 8 <script type="text/javascript">
 9     alert("使用script元素在XHTML文档中直接嵌入JavaScript语句");
10 </script>
11
12 </body>
13 </html>

View Code

将JavaScript源文件通过<script>元素的src属性链接到XHTML文档---结构、表现、行为分离

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title></title><script type="text/javascript" src="../js/two.js"></script>
</head>
<body>
<form action="#" method="get"><input type="button" value="点击" onclick="alertTest();">
</form></body>
</html>

View Code

在two.js里包含的脚本

function alertTest(){    alert("链接外部脚本");}

脚本包含在XHTML事件处理程序性中,eg:onclick  ondblclick onkeydown ...

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title></title><!--<script type="text/javascript" src="../js/two.js"></script>-->
</head>
<body>
<form action="#" method="get"><input type="button" value="点击" onclick="alert('脚本包含在XHTML中');">
</form></body>
</html>

View Code

5 JavaScript变量

JS中声明变量都用关键字var,并且JS区分大小写

弱类型,不一定要初始化

在声明变量时注意的一些小细节:

声明变量后 第一次给变量赋什么样类型的值,以后必须使用相同的类型

当我们没有使用var 定义变量的时候 如果没有给变量赋值 就会报错 如果给它赋值了。 宿主环境 (浏览器)就把 认为一个 全局变量

var  num;   当声明的变量未初始化时,值为undefined。
6 JavaScript数据类型6.1 原始数据类型   

 typeof运算符 typeof运算符有一个参数,即要检查的变量或值;在使用typeof运算符时采用引用类型存储值会出现一个问题,无论引用的是什么类型的对象,他都返回"Object";用另一个运算符instanceof来解决这个问题;egvar s=new String('hello js');alert(s instanceof String);// 输出"true"这个需要开发者明确的指出对象为某特定的类型

–Undefined:
•当声明的变量未初始化时,值为undefined。
•当函数无明确返回值时,其调用结果也是undefined。

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title></title><script>function test(){alert("1111");return 1;}
//         var i = test(); //当函数无明确返回值时,其调用结果也是undefined。
//           var i = test() ;// 先调用函数test 任何把返回值赋值为i   undefinedvar i = test ; //是把函数test的地址赋值给了i;
         alert(i);alert(typeof (i));</script>
</head>
<body>
</body>
</html>

View Code

–Null
•值为null,null是从Undefined派生来的。因此null==undefined
•null表示不存在的对象。
var i = null;alert(i);//nullalert(typeof (i));//object

–Boolean
•true或false
–Number
•即可表示32位整数,也可表示64位浮点数。
•Number.MAX_VALUE和Number.MIN_VALUE定义了上下限。
•Number.POSITIVE_INFINITY和Number.NEGATIVE_INFINITY Infinity表示无穷大。isFinite()较验是否无穷大。无穷大返回false
•NaN表示非数字,它与自身不相等。一般发生在类型转换失败时,isNaN()较验是否为数字。
–String
•可用单引号或双引号声明。
数据类型转换
parseInt()

从左到右依次解析 直到遇见解析的那个字符不是是数字, 则结束

parseFloat
从左到右依次解析 直到遇见解析的那个字符不是是数字,则结束, 从有效数字开始,只会出现一个小数点。
var a = parseInt("1234"); //返回1234
var b = parseInt("abc"); //返回NaN
var b = parseFloat("012.23.45"); //返回12.23
强制类型转换有三种:Boolean(value)  Number(value)   String(value)
当要转换的值是至少有一个字符的字符串,非0数字或对象时,Boolean()函数返回true,如果该值是空字符串,数字0,undefined或null,将返回false;
Number 转换的时候 是把 字符串当一个整体来转换;String 转换的时候 只需要调用作为参数传递进来的值的toString()方法;
 6.2 引用数据类型

原生对象
–由JavaScript提供,独立于浏览器的对象。
–Object,Array,String,Boolean,Number,Date,RegExp...
内置对象
–也是一种原生对象,只是在使用时不需要初始化。
–Global,Math
宿主对象
–与浏览器有关的对象。
–BOM,DOM
自定义对象

数组对象:
Array 对数组的内部支持
Array.concat( ) 连接数组
Array.join( ) 将数组元素连接起来以构建一个字符串
Array.length 数组的大小
Array.pop( ) 删除并返回数组的最后一个元素
Array.push( ) 给数组添加元素
Array.reverse( ) 颠倒数组中元素的顺序
Array.shift( ) 将元素移出数组
Array.slice( ) 返回数组的一部分
Array.sort( ) 对数组元素进行排序
Array.splice( ) 插入、删除或替换数组的元素
Array.toLocaleString( ) 把数组转换成局部字符串
Array.toString( ) 将数组转换成一个字符串
Array.unshift( ) 在数组头部插入一个元素




 

JavaScript核心基础语法相关推荐

  1. JS:JavaScript编程语言基础语法总结

    JS:JavaScript编程语言基础语法总结 目录 常用基础语法 一.变量 1.声明变量var 二.语句 1.if判断语句 2.for循环语句 三.函数 1.定义一个函数 常用基础语法 consol ...

  2. JavaScript核心基础总结笔记

    JavaScript 前言:大家好.我是小编达闻西,很高兴又和大家见面了.上篇文章我总结了一下html,css的常用基础知识.这次我又重新的把JavaScript的相关知识点给总结了一下.发现js的东 ...

  3. JavaScript(1)——基础语法部分(CSDN)

    前言:本篇文章原文为我在语雀上的学习笔记Javascript(1)--基础语法部分 web 发展史 Mosaic,是互联网历史上第一个获普遍使用和能够显示图片的网页浏览器.于 1993年问世. 199 ...

  4. Javascript的基础语法(标识符/变量)

    1.书写方面的语法: 1)区分大小写 javascript中的一切,包括变量,函数名和操作符都是区分大小写的. eg:text和Text表示两种不同的符号. 2)行结束符 ;可以没有(为养成良好的写代 ...

  5. Web前端开发笔记——第四章 JavaScript程序设计 第一节 JavaScript的基础语法

    目录 一.JavaScript的定义 二.代码的创建和使用 (一)内嵌JavaScript代码 (二)引用JavaScript文件 三.代码的注释 四.输出数据 (一)alert()弹出警告框 (二) ...

  6. JavaScript之基础语法整理

    1.数据类型(number,boolean,string,null,undefined,symbol,object) es是动态语言,弱类型语言,虽然先声明了变量,但是变量可以重新赋值任意类型 弱类型 ...

  7. 第六次前端培训(JavaScript的基础语法(二))

    3.6 运算符 算数运算符.递增和递减运算符.比较运算符.逻辑运算符.赋值运算符 3.7 控制语句 3.8 数组 3.8.1.数组定义 JS中定义数组的三种方式如下(也可先声明再赋值)∶ var ar ...

  8. JavaScript基础语法笔记,ECMAScript基础,每部分都有经典案例以及解析。会持续更新(2022.0310)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.JavaScript导读 1.1 什么是JavaScript(这里借鉴Js红宝书的内容,看一看就可以了) 1.2 ...

  9. JavaScript基础语法知识遨游记

    ⭐️前面的话⭐️ 本篇文章将介绍JavaScript的基础语法,在基于拥有java/c++的基础上来进行JavaScript的学习,大致内容包括变量,运算符,数据类型,分支语句,循环语句,数组,函数, ...

最新文章

  1. 使用NPOI时ICSharpCode.SharpZipLib版本冲突问题解决
  2. 【Android 逆向】Android 进程注入工具开发 ( Visual Studio 开发 Android NDK 应用 | Visual Studio 中 SDK 和 NDK 安装位置 )
  3. Linux中常用到的命令
  4. 锁定弹出层(jquery语法)
  5. 【Ubuntu】Ubuntu16.04安装 搜狗输入法 史上最详细
  6. c语言手写指针和乘号,C-学会使用指针(示例代码)
  7. SVN仓库迁移到Git遇到的两个问题和解决办法
  8. 计算机科学与技术专业的英文作文,计算机专业英语:科技交流与科技论文写作...
  9. 打开和关闭 Oralce PDB数据库
  10. 零和博弈 (社会学概念)
  11. SaaSpace:11 款最佳免费备份软件工具
  12. 计算机内存条能装几个,电脑能装几个内存条_一般电脑插几个内存条
  13. php中单选框可以默认选中吗,php selectradio和checkbox默认选择的简单示例
  14. Mybatis 注解开发
  15. Android无法通过浏览器观看HLS直播的问题
  16. 推荐一款免费的内网穿透工具ngrok
  17. 【中英双语】Linux黑客教程从初学者到高级!
  18. html5倒车游戏,html5制作转盘游戏
  19. 性格色彩测试android程序开发之六--activity界面
  20. 下载并运行 Synopsys Detect

热门文章

  1. 字节软件测试岗二面:APP测试问题被虐哭了,直到看到这些知识点
  2. html5 怎么写动态图形设计,如何用SVG制作酷炫动态图标?(代码实例)
  3. html下拉菜单换背景颜色,无下拉箭头的Select下拉框实现更换背景颜色
  4. 2008服务器修改ipv4,Windows 2008/2012/2016如何添加配置多IP
  5. linux shell 获取用户名,shell脚本输出/etc/passwd中shell类型对应的用户名及其个数
  6. mex2 Inputs and Outputs
  7. 从2D恢复出3D的数据
  8. matlab whos命令
  9. gradle构建java实例_Gradle构建Java应用程序
  10. 虚拟服务器实验,面向计算机硬件的远程虚拟实验服务