JavaScript基础知识复习
1,javascript是基于对象和事件驱动的,并有安全性能的脚本语言;
2,javascript的特点:
1)向HTML中添加交互事件;
2)脚本语言,与java语法类似;
3)解释性语言,边执行边解释;
3,网页中引用javascript的三种方式:
1)页面内添加script标签;
2)引用外部js文件;
3)直接写在HTML标签中;<input type="button" value="" onclick="javascript:alert("欢迎你");"/>
4,变量的声明和赋值:
1)可以先声明再赋值;
2)边声明边赋值;
3)不声明直接赋值;
建议:变量不经声明容易出错,一般不推荐使用;
5,数据类型:
undefined,number(包括整型和字符型的),null,boolean,string(包括单引号和双引号的),
undefined:表示不存在的值或尚未赋值的变量。对一个变量只声明不赋值,或者赋予一个不存在的属性值,都会使该变量的值为undefined;
null:表示“什么都没有”的占位符,null和undefined的区别是:null表示该变量被赋予一个空值,undefined表示变量尚未被赋值;
数值型数据类型还包括:特殊值Infinity (无穷大)和NaN(不是数值类型),
Infinity:当一个数值或数值表达式的值超出了可表示的最小值的范围,将被赋值为-Infinity,所有的Infinity(或-Infinity)值都相等,并且infinity 与其他数值进行运算的结果仍为infinity。
一个正数被0除,结果是Inifinity,一个负数被0除结果是-Infinity,而0/0的结果是undefined(NaN)
NaN: 含义是“not a number”当一个undefined 表达式结果为数值型数据时,该数值型数据就是NaN值,如:0/0或对Infinity求正弦值时,或对Infinity与-Infinity进行相加时,结果都是NaN,使用isNaN()方法或让某个值与其自身相比较,可以确定一个只是否是NaN,NaN是唯一一个不可以可自身进行比较的值。
基本类型和合成类型:
基本类型在内存中有固定大小,而合成类型(如对象,数组,函数等)则可以有任意长度;因此,不能将合成类型直接存储在关联每个变量的固定内存地址中,实际上存储的是对这个值的引用;
如:数值型数据:
var a = 3.14;
var b =a;
a = 4;
document.write("a: " +a+<br>); //a:4
document.write("b: " +b); //b:3.14,b不随a的值的改变而改变
然而:
var a = [1,2,3];
var b =a; //此处赋给b的是对数组值的引用,不是数组本身,执行完这个后,就有了两个对数组的引用了
a[0] = 99;
document.write("a: " +a+<br>); //a:99,2,3
document.write("b: " +b); //b:99,2,3
6,字符串对象:
1)属性:
字符串对象.length;
2)方法:
charAt(index); :返回指定为位置的字符;
indexOf(str ,index);:返回某个指定的字符串str在字符串中首次出现的位置;
substring(index1,index2):返回从index1到index2的子字符串,并且包括索引index1对应的字符,不包括index2对应的字符;
split():将字符串分割为字符串数组;
例:统计包含指定字符的字符串
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>判断字符串中是否有指定字符</title>
</head>
<body>
<script type="text/javascript">
window.onload=function() {
var count=0;
var countArray = new Array("America","Greece","Britain","Canada","China","Egypt");
document.write("在以下字符串中:"+"<br/>");
for(var i in countArray){
document.write(countArray[i]+'<br/>');
if (countArray[i].indexOf('a')!= - || countArray[i].indexOf('A')!= - ) {
count++; };
}
document.write("共有"+count+"个字符串中有'a'或'A'");
}
</script>
</body>
</html>
7,typeof运算符:检测变量的返回值类型;
返回值如下:
undefined,string,boolean,number,object(javascript中的对象,数组或null);
8,数组:
创建数组:var fruit=new Array(size); //size是元素总数
给数组赋值:
1)var fruit=new Array("apple","orange","peach","banana");
2)var fruit=new Array(4);
fruit[0]="apple";fruit[1]="orange";fruit[2]="peach";fruit[3]="banana";
访问数组:数组名[下标];
9,数组的常用方法和属性:
属性:length;设置或返回数组中元素的数目;
方法:
join():将数组中的所有元素放到以字符串里,然后以一个分隔符进行分隔;如座机号码;
sort():将数组排序;
push():向数组末尾添加一个或多个元素,并返回新的长度;
10,break:终止之后的所有循环;
continue:终止当前循环,继续下一次循环;
11,常用系统函数:
parseInt("字符串"); 将字符串转换为整型数字;
parseFloat("字符串"); 将字符串转换为浮点型数字;
isNaN();用来检查参数是否为数字;
常用的输入输出语句:
alert();
prompt("","");//prompt(""),
使用字符串转换函数和常用的输入输出语句时注意,不能直接写成num=parseFloat(prompt("",""));
12,匿名函数:即没有函数名;
定义匿名函数:
var showHello=function(count){ //没有函数名,类似于声明变量var showHello=变量值;
for(var i=0;i<count;i++){
document.write("hello world");
}
}
JavaScript基础知识复习的更多相关文章
- javascript基础知识复习一
JavaScript 一.数据类型 A.String B.Number C.boolean 1.undefined.false.null.0.“”这五个返回的都是false: 2.NAN==NAN返 ...
- JavaScript进阶【三】JavaScript面向对象的基础知识复习
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Javascript基础知识总结一
Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
- 学习javascript基础知识系列第三节 - ()()用法
总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...
- JavaScript 基础知识 - BOM篇
前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...
- JavaScript——基础知识,开始我们的js编程之旅吧!
JavaScript基础第01天 1. 编程语言 编程语言: 可以通过类似于人类语言的"语言"来控制计算机,让计算机为我们做事情,这样的语言就叫做编程语言(Programming ...
- (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识
开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...
- JavaScript基础知识整理
只整理基础知识中关键技术,旨在系统性的学习和备忘. 1.在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN ...
随机推荐
- C# LocalizationHelpers (搬运)
using Utils; namespace System.Web.Mvc { /// <summary> /// 本地化帮助类 /// </summary> public s ...
- 安装Genymotion与集成eclipse,最后有集成android studio
本安装过程从不用到VPN 一切国内网络都可以解决. 首先下载Genymotion,网址 https://www.genymotion.com/account/login/ 首先需要注册,我使用163 ...
- DUIlib使用Fastreport--自定义的数据
报表根据数据源的可以分为拉模式和推模式,拉模式就是在报表中添加数据源组件从数据库中拉取数据,我们上篇报表的简单使用就是拉模式.而推模式就是在程序中构造数据托给报表显示.这篇我们这要说的是推模式. 在程 ...
- bat脚本学习
工作需求,写个bat脚本来启动自己的守护进程:bat方面完全空白啊~稍微学习了下,记录下来,后面复习! 直接上代码: 示例一:for字符串切割,切割文本中的字符串: test.txt 文本内容如下: ...
- GOPS2017全球运维大会 • 深圳站 历届金牌讲师精选亮相
GOPS2017全球运维大会 • 深圳站将于2017年4月21日-22日在深圳举行,GOPS2017报名平台:活动家! 快捷报名通道:http://www.huodongjia.com/event-2 ...
- ES 6 : 变量的解构赋值
1. 数组的解构赋值 [ 基本用法 ] 按照一定的模式从数组或者对象中取值,对变量进行赋值的过程称为解构. 以前,为变量赋值只能直接指定值: 而ES 6 允许写成下面这样: 上面的代码表示,可以从数组 ...
- 杭电OJ--自行车计速器
Biker's Trip Odometer Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Ot ...
- Two Pointers - leetcode [两指针问题]
125. Valid Palindrome consider only alphanumeric characters and ignore cases. transform(s.begin(), s ...
- es6--(二)变量的解构赋值
1.数组的解构赋值 //数组解析 let [a,b,c] = [1,2,3]; //a=1;b=2;c=3 //嵌套数组 let [a,[b,c]] = [1,[2,3]];//a=1;b=2;c=3 ...
- CSS:haslayout知多少
我们都知道浏览器有bug,而IE的bug似乎比大多数浏览器都多.IE的表现与其他浏览器不同的原因之一就是,显示引擎使用一个称为布局(layout)的内部概念. 因为布局是专门针对显示引擎内部工作方 ...