Pyhton学习——Day41
#一个完整的 JavaScript 实现是由以下 3 个不同部分组成的:
# 核心(ECMAScript)
# 文档对象模型(DOM) Document object model (整合js,css,html)
# 浏览器对象模型(BOM) Broswer object model(整合js和浏览器)
# Javascript 在开发中绝大多数情况是基于对象的.也是面向对象的.
# Javascript
# / | \
# ECMAScript DOM BOM
# ECMAScript 描述了以下内容:语法 类型 语句 关键字 保留字 运算符 对象 (封装 继承 多态) 基于对象的语言.使用对象.
#————————————————————————————————————————————————————————#
# JavaScript的引入方式
# {#1 直接编写#}
# <script>
# alert('hello yuan')
# </script>
# {#2 导入文件#}
# <script src="hello.js"></script>
# #————————————————————————————————————————————————————————#
# JS就是一个简单的随便的语言,弱类型语言
# JS创建变量用var创建
# 可以保存任何数据类型
#声明变量时不用声明变量类型. 全都使用var关键字
# 一行可以声明多个变量.并且可以是不同类型.
# (了解) 声明变量时 可以不用var. 如果不用var 那么它是全局变量.
# 变量命名,首字符只能是字母,下划线,$美元符 三选一,且区分大小写,x与X是两个变量
# 变量还应遵守以下某条著名的命名规则:
# Camel 标记法
# 首字母是小写的,接下来的字母都以大写字符开头。例如:
# var myTestValue = 0, mySecondValue = "hi";
# Pascal 标记法
# 首字母是大写的,接下来的字母都以大写字符开头。例如:
# Var MyTestValue = 0, MySecondValue = "hi";
# 匈牙利类型标记法
# 在以 Pascal 标记法命名的变量前附加一个小写字母(或小写字母序列),说明该变量的类型。
# 例如,i 表示整数,s 表示字符串,如下所示
# Var iMyTestValue = 0, sMySecondValue = "hi";
#————————————————————————————————————————————————————————#
# 数据类型
# 数字类型(Number)
# 整数:
# 在JavaScript中10进制的整数由数字的序列组成
# 精确表达的范围是 -9007199254740992(-253)
# 到
# 9007199254740992(253)
# 超出范围的整数,精确度将受影响
# 浮点数:
# 使用小数点记录数据
# 例如:3.4,5.6
# 使用指数记录数据
# 例如:4.3e23 = 4.3
# 16进制和8进制数的表达
# 16进制数据前面加上0x,八进制前面加0
# 16进制数是由0 - 9, A - F等16个字符组成
# 8进制数由0 - 7等8个数字组成
# 16进制和8进制与2进制的换算
# 字符串(String)
# 是由Unicode字符、数字、标点符号组成的序列
# 字符串常量首尾由单引号或双引号括起
# JavaScript中没有字符类型
# 常用特殊字符在字符串中的表达
# 字符串中部分特殊字符必须加上右划线\
# 常用的转义字符 \n:换行 \':单引号 \":双引号 \\:右划线
# 布尔型(Boolean)
# 简介
# Boolean类型仅有两个值:true和false,也代表1和0,实际运算中true=1,false=0
# 布尔值也可以看作on/off、yes/no、1/0对应true/false
# Boolean值主要用于JavaScript的控制语句,例如
# if (x==1){
# y=y+1;
# }else {
# y=y-1;
# }
# Null & Undefined
# Undefined 类型
# Undefined 类型只有一个值,即 undefined。当声明的变量未初始化时,该变量的默认值是 undefined。
# 当函数无明确返回值时,返回的也是值 "undefined";
# Null 类型
# 另一种只有一个值的类型是 Null,它只有一个专用值 null,即它的字面量。
# 值 undefined 实际上是从值 null 派生来的,因此 ECMAScript 把它们定义为相等的。
# 尽管这两个值相等,但它们的含义不同。undefined 是声明了变量但未对其初始化时赋予该变量的值,
# null 则用于表示尚未存在的对象(在讨论 typeof 运算符时,简单地介绍过这一点)。
# 如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是 null。
# var person=new Person()
# var person=null
# 数据类型转换
# JavaScript属于松散类型的程序语言
# 变量在声明的时候并不需要指定数据类型
# 变量只有在赋值的时候才会确定数据类型
# 表达式中包含不同类型数据则在计算过程中会强制进行类别转换
# 数字 + 字符串:数字转换为字符串
# 数字 + 布尔值:true转换为1,false转换为0
# 字符串 + 布尔值:布尔值转换为字符串true或false
# 强制类型转换函数
# 函数parseInt: 强制转换成整数
# 例如parseInt("6.12")=6 ; parseInt(“12a")=12 ; parseInt(“a12")=NaN ;parseInt(“1a2")=1
# 函数parseFloat: 强制转换成浮点数 parseFloat("6.12")=6.12
# 函数eval:将字符串强制转换为表达式并返回结果 eval("1+1")=2 ; eval("1<2")=true
# ————————————————————————————————————————————————————————#
# ECMAScript 运算符
# 加(+)、 减(-)、 乘(*) 、除(/) 、余数(% ) 加、减、乘、除、余数和数学中的运算方法一样 例如:9/2=4.5,4*5=20,9%2=1
# -除了可以表示减号还可以表示负号 例如:x=-y
# +除了可以表示加法运算还可以用于字符串的连接 例如:"abc"+"def"="abcdef"
# 递增(++) 、递减(--)
# ECMAScript 逻辑运算符
# 逻辑 AND 运算符(&&)
# 逻辑 AND 运算的运算数可以是任何类型的,不止是 Boolean 值。
# 如果某个运算数不是原始的 Boolean 型值,逻辑 AND 运算并不一定返回 Boolean 值:
# 如果某个运算数是 null,返回 null。
# 如果某个运算数是 NaN,返回 NaN。
# 如果某个运算数是 undefined,返回undefined。
# 逻辑 OR 运算符(||)
# 与逻辑 AND 运算符相似,如果某个运算数不是 Boolean 值,逻辑 OR 运算并不一定返回 Boolean 值
# ECMAScript 赋值运算符
# 赋值 = JavaScript中=代表赋值,两个等号==表示判断是否相等
# 例如,x=1表示给x赋值为1
# if (x==1){...}程序表示当x与1相等时
# if(x==“on”){…}程序表示当x与“on”相等时
# 配合其他运算符形成的简化表达式
# 例如i+=1相当于i=i+1,x&=y相当于x=x&y
# ECMAScript等性运算符
# 执行类型转换的规则如下:
# 如果一个运算数是 Boolean 值,在检查相等性之前,把它转换成数字值。false 转换成 0,true 为 1。
# 如果一个运算数是字符串,另一个是数字,在检查相等性之前,要尝试把字符串转换成数字。
# 如果一个运算数是对象,另一个是字符串,在检查相等性之前,要尝试把对象转换成字符串。
# 如果一个运算数是对象,另一个是数字,在检查相等性之前,要尝试把对象转换成数字。
# 在比较时,该运算符还遵守下列规则:
# 值 null 和 undefined 相等。
# 在检查相等性时,不能把 null 和 undefined 转换成其他值。
# 如果某个运算数是 NaN,等号将返回 false,非等号将返回 true。
# 如果两个运算数都是对象,那么比较的是它们的引用值。如果两个运算数指向同一对象,那么等号返回 true,否则两个运算数不等。
# ————————————————————————————————————————————————————————#
# 控制语句
# if-else基本格式
# if (表达式){
# 语句1;
# ......
# }else{
# 语句2;
# .....
# }
# 功能说明
# 如果表达式的值为true则执行语句1,
# 否则执行语句2
# switch 选择控制语句
# switch基本格式
# switch (表达式) {
# case 值1:语句1;break;
# case 值2:语句2;break;
# case 值3:语句3;break;
# default:语句4;
# }
# for 循环控制语句
# for循环基本格式
# for (初始化;条件;增量){
# 语句1;
# ...
# }
# 功能说明
# 实现条件循环,当条件成立时,执行语句1,否则跳出循环体
# while 循环控制语句
# ————————————————————————————————————————————————————————#
# ECMA对象
# 对象的概念与分类:
# 由ECMAScript定义的本地对象.独立于宿主环境的 ECMAScript 实现提供的对象.(native object)
# ECMAScript 实现提供的、独立于宿主环境的所有对象,在 ECMAScript 程序开始执行时出现.
# 这意味着开发者不必明确实例化内置对象,它已被实例化了。
# ECMA-262 只定义了两个内置对象,即 Global 和 Math (它们也是本地对象,根据定义,每个内置对象都是本地对象)。
# (built-in object)
# 所有非本地对象都是宿主对象(host object),
# 即由 ECMAScript 实现的宿主环境提供的对象。所有 BOM 和 DOM 对象都是宿主对象。
# 11种内置对象
# Array ,String , Date, Math, Boolean, Number Function, Global, Error, RegExp , Object
# Function 对象(重点)
# function 函数名 (参数){ 函数体;
# return 返回值;
# }
# 可以使用变量、常量或表达式作为函数调用的参数
# 函数由关键字function定义
# 函数名的定义规则与标识符一致,大小写是敏感的
# 返回值必须使用return
Pyhton学习——Day41的更多相关文章
- Pyhton学习——Day26
#多态:多态指的是一类事物有多种形态# import abc# class Animal(metaclass = abc.ABCMeta):# 同一类事物:动物# @abc.abstractclass ...
- pyhton 学习
官方学习文档 https://docs.python.org/3/tutorial/
- 20190320_head first pyhton学习笔记之构建发布
1.把代码nester.py放入文件夹nester中,在文件夹中再新建一个setup.py文件,文件内容如下: from distutils.core import setup setup( name ...
- Pyhton学习——Day2
Python开发IDE(工具)Pycharm.eclipse1.循环while 条件 #循环体 #条件为真则执行 #条件为假则执行break用于退出所有循环continue用于退出当前循环 2.Pyc ...
- Pyhton学习——Day28
#上下文协议:文件操作时使用with执行# with open('a.txt','w',encoding='utf-8') as f1:# with语句,为了让一个对象兼容with语句,必须在这个对象 ...
- Pyhton学习——Day27
# hasattr(obj,'name')-->obj.name# getattr(obj,'name',default = 'xxx')--->obj.name# setattr(obj ...
- Pyhton学习——Day25
#面向对象的几个方法#1.静态方法@staticmethod,不能访问类属性,也不能访问实例属性,只是类的工具包#2.类方法:@classmethod,在函数属性前加上类方法,显示为(cls)代表类, ...
- Pyhton学习——Day24
# #面向对象设计:# def dog(name,gender,type):# def jiao(dog):# print('One Dog[%s],wfwfwf'%dog['name'])# def ...
- Pyhton学习——Day23
#re模块方法:findall search#findall:返回所有满足匹配条件的数值,放在列表里#search : #函数会在字符串内查找模式匹配,只到找到第一个匹配然后返回一个包含匹配信息的对象 ...
随机推荐
- element合并单元格方法及遇到问题的解决办法
效果如图: 代码如下 <!-- 查看选课 --> <template> <div> <el-table :data="listData" ...
- alg--分治法
分治--分而治之, 把大的问题分成n个小的问题,分别处理,然后汇总小问题的结果. 具体介绍可以参考这位大哥的blog: https://www.cnblogs.com/steven_oyj/archi ...
- python第六周:面向对象编程
面向对象编程: 世界万物,皆可分类 世界万物,对象 只要是对象,就肯定属于某种品类 只要是对象,就肯定有属性 oop编程利用"类"和"对象"来创建各种模型来实现 ...
- MySQL 利用binlog增量备份+还原实例
一,什么是增量备份 增量备份,就是将新增加的数据进行备份.假如你一个数据库,有10G的数据,每天会增加10M的数据,数据库每天都要备份一次,这么多数据是不是都要备份呢?还是只要备份增加的数据呢,很显然 ...
- CAD教程-AL对其命令
AL可以实现不规则的对其功能 1.第一步按下AL,按下Enter 2.选择第一个源点 3.选择第一个目标点 4.选择第二个源点 5.选择第二个目标点 6.按下Enter,完成移位
- JavaScript中==和===区别
在我们的日常编码中对于===是不常用的,但是它很重要 ===:表示绝对相等(严格) !==:表示不绝对相等 ==:表示相等(不严格) !=:表示不相等 看一下列子: null==undefined ...
- css3 transform 旋转div
css3 transform 旋转div 学习了:http://www.w3school.com.cn/cssref/pr_transform.asp
- Ruby中使用patch HTTP方法
Ruby中使用patch HTTP方法 如果使用patch,在后台可以看到只更新了改动的部分: Started PATCH "/ads/5/update" for ::1 at 2 ...
- 经验之谈—OAuth授权流程图
事实上我们在开发中,常常须要解决获得用户的一些特定的数据,比方:能够选择使用微博登陆.使用QQ登陆等等.然后我们间接的获得用户的头像.昵称等信息.这些都涉及到OAuth授权的内容 OAuth授权有这么 ...
- Android-自己定义标题栏
Android-自己定义标题栏 2014年4月25日 分享知识点 最近也比較多事情,想发发博客就是心有余而力不足,本篇博文主要教大家怎样实现自己定义标题栏,非常easy.那么聪明的你一下就看懂. 有兴 ...