当前位置: 移动技术网 > IT编程>开发语言>JavaScript > 学习js一周的总结

学习js一周的总结

2020年07月12日  | 移动技术网IT编程  | 我要评论

学习js一周的总结

1.js的简史

1995年时,由Netscape公司的Brendan Eich开发出来的,最初中liveScript,为了快速发展,借用了当时一个业界非常流行的词语java,于是更名为javaScript.后来微软进入浏览器行业,从IE3.0开始的搭载了一个javaScript的克隆版JScript.因为行业的竞争,导致出来了多个不同的版本,使得各种浏览器,在兼容程序方面出现了混乱。为了统一语法标准,1997 年,JavaScript 1.1 作为一个草案提交给欧洲计算机制造商协会(ECMA),第 39 技术委员会(TC39)被委派来“标准化一个通用、跨平台、中立于厂商的脚本语言的语法和语义,由来自 Netscape、Sun、微软、Borland 和其他一些对脚本编程感兴趣的公司的程序员组成的 TC39 锤炼出了 ECMA-262,该标准定义了名为 ECMAScript 的全新脚本语言。

js的概述

JavaScript是一种基于对象的,事件驱动的,跨平台的,客户端脚本语言

js能作什么?

对页面进行渲染,让页面有行为。让页面动起来,与后台数据进行交互。

js的组成

ECMAScript:定义语法规则

DOM (document object module)

BOM(browser object module)

js的引入方式

内联

<script></script>

外部引用

<script></script>

变量的数据类型

 a.基本数据类型
        number
        string
        boolean:布尔类型。表示真true和假false;
        null 
        undefined
    b.引用数据类型(对象类型)
        object
    c.typofe 操作符
        作用:用于检测一个变量是哪种数据类型。
逻辑运算
与:&&
    
    true && true   ==   true
    false && false  == false
   false && true ==  false
   true && false ==  false

或:||
    true || true   ==== true
    true || false ===== true
   false || true ===== true
  false || false ===== false 
非:!
     !false   ==== true
案例 var a = false || 5 && 0 && 6;alert(a);
    var a = !null && undefined || "" && 6;alert(a);
    var a = !null && undefined || " " &&  6;alert(a);
    var a = !null && undefined || "0" &&  6;alert(a);
    var a = !null && undefined || 0 &&  6;alert(a);
自增自减
	++在前,先计算再赋值
    ++在后,先赋值再计算
三目运算
表达式(true/false) ? 语句1(true时执行) : 语句2(false时执行) 

三目运算的嵌套:

表达式1(true/false) ? 语句1(表达式1true时执行) : (表达式2(true/false) ? 语句2(表达式2true时执行): 语句3(表达式2false时执行))
运算符的优先级
() > 自增自减运算符(单目运算符)> 算术学运算符 > 关系运算符 > 逻辑运算符 > 三目运算符 > 赋值运算符
手动强制类型转换
Number()
parseInte()
parseFloate()
toString();
Boolean();
--------------------------------------------------------
Number():
alert(Number(true)); //1.Boolean类型的true和false分别转换成1和0
alert(Number(25)); //25,数值型直接返回
alert(Number(null)); //0,空对象返回0
alert(Number(undefined)); //NaN,undefined返回NaN
如果是字符串,应该遵循以下规则:
1, 只包含数值的字符串,会直接转成十进制数值,如果包含前导0,即自动去掉。
alert(Number(“456”)); //456
alert(Number(“070”)); //70
2,只包含浮点数值的字符串,会直接转成浮点数值,如果包含前导和后导0,即自动去掉。
alert(Number(“08.90”)); //8.9
3,如果字符串是空,那么直接转成0.
alert(Number(“”)); //0
4,如果不是以上三种字符串类型,则返回NaN。
alert(“aa123“); //NaN
-------------------------------------------------------
parseInt();
alert(parseInt(“456zhou”)); //456,会返回整数部分
alert(parseInt(“Lee456zhou”));//NaN,如果第一个不是数值,就返回NaN
alert(parseInt(“12Lee56zhou”));//12,从第一数值开始取值,到最后一个连续数值结束
alert(parseInt(“56.12”)); //56,小数点不是数值,会被去掉
alert(parseInt(“”)); //NaN,空值返回NaN
parseInt()除了能够识别十进制数值,也可以识别八进制和十六进制。
alert(parseInt(“0xA”)); //10,十六进制
alert(parseInt(070)); //56,八进制,
alert(parseInt(“070”)); //如如果为八进制值的字符串,不支持八进制的转换
alert(parseInt(“0xALee”)); //100,十六进制,Lee被自动过滤掉
ECMAScript为parseInt()提供了第二个参数,用于解决各种进制的转换。
alert(parseInt(“0xAF”));    //175,十六进制
alert(parseInt(“AF”,16)); //175,第二个参数指定十六进制,可以去掉0x前导
alert(parseInt(“AF”)); //NaN,理所当然
alert(parseInt(“101010101”,2)); //314,二进制转换
alert(parseInt(“70”,8)); //56,八进制转换
------------------
parseFloate()和parseInt();用法类似,结果为小数。
------------------------------------------------------------
toString()
toString()方法可以把值转换成字符串。
var box = 11;
alert(typeof box.toString());
var box = true;
alert(typeof box.toString());
toString()方法一般是不需要传参的,但在数值转成字符串的时候,可以传递进制参数。
var box = 10;
alert(box.toString()); //10,默认输出
alert(box.toString(2)); //1010,二进制输出
alert(box.toString(8)); //12,八进制输出
alert(box.toString(10)); //10,十坦白,输出
alert(box.toString(16)); //a, 十六进制输出
----------------------------------------------------------
Boolean()
所有的非0的数字都是true 0为false
所有的非空字符串都是true 空字符串为false
null undefined NaN都是false
所有的引用数据类型的值都是true

if语句

if(表达式){
    语句
}
if(表达式){
    语句1
}else{
    语句2
案例
请输入一个年份,判断这个年份是平年还是润年
		var y = 1900;
		if(y % 4 == 0 && y % 100 != 0 || y % 400 == 0){
			alert(y + "是闰年");
		}else{
			alert(y + "是平年");
		}

在这里插入图片描述
0L3dlaXhpbl80OTI1NzA1MQ==,size_16,color_FFFFFF,t_70#pic_center)

switch 语句

		switch(表达式){
			//alert("ok");
			case 值:{
				语句
			}
案例

输入0–6之间的一个整数 判断星期几 0 —日 1–星期一 …

var week = parseInt(prompt("输入0-6之间的整数"));
		
		switch(week){
			case 0:
				alert("星期日");
				break;
			case 1:
				alert("星期一");
				break;
			case 2:
				alert("星期二");
				break;
			case 3:
				alert("星期三");
				break;
			case 4:
				alert("星期四");
				break;
			case 5:
				alert("星期五");
				break;
			case 6:
				alert("星期六");
				break;
			default:
				alert("输入有误");
		}

whlie 循环

var i = 初始变量
while(表达式){
    循环体语句
    i++;增量(步长)
}
案例
1.循环输出10个“*”
		
		var i = 0;
		while(i < 10){
			
			document.write("*");
			i++;
		}

do while 循环

var i = 初始变量
do{
    循环体语句
    i++;增量(步长)
}while(表达式)
案例
1-100的和
		 var i = 0;
		 var sum = 0;
		 do{
			i++;
		 	sum += i;
		 }while(i < 100);
		
		 console.log(sum);
		document.write("*");
		i++;
	}

#### do while 循环

var i = 初始变量
do{
循环体语句
i++;增量(步长)
}while(表达式)


###### 案例

1-100的和
var i = 0;
var sum = 0;
do{
i++;
sum += i;
}while(i < 100);

	 console.log(sum);

#### for 循环

本文地址:https://blog.csdn.net/weixin_49257051/article/details/107284421

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网