字符串函数

ES6中字符串的新增方法梳理

戏子无情 提交于 2020-02-26 00:07:43
1.String.fromCodePoint(); String,fromCodePoint()方法可以认为是对String.fromCharCode()方法的扩展,这两个方法的共同点在于都是用于Unicode码点返回对应字符,但是差异在于String.fromCharCode()该方法不能识别大于0xFFFF的码点,ES6中提供了String.fromCodePoint()就很好的弥补了String.fromCharCode()的不足。它可以识别码点大于0xFFFF的对应字符。 上面是在chrome控制台打印的结果,很明显String.fromCodePoint()中的方法可以正确的识别‘0x20BB7“的字符,而String.fromCharCode()会舍弃掉掉溢出的高位2变成解析‘0x0BB7’unicode码点。 2.String.raw(); ES6 还为原生的 String 对象,提供了一个 raw() 方法。该方法返回一个斜杠都被转义(即斜杠前面再加一个斜杠)的字符串,往往用于模板字符串的处理方法。 如果是作为方法的话第一个参数是对象 而且要有raw参数,如果没有会报错,因为该方法可以看作是专门的模板字符串的标签函数,它的第一个参数是具有raw属性的对象。 3.codePointAt(); ES6提供了该方法可以认为是对charCodeAt()方法的补充

正则表达式方法的使用

眉间皱痕 提交于 2020-02-25 22:10:35
Python 的 re 模块 在 Python 中,我们可以使用内置的 re 模块来使用正则表达式。 有一点需要特别注意的是,正则表达式使用 对特殊字符进行转义,所以如果我们要使用原始字符串,只需加一个 r 前缀,示例: r’chuanzhiboke\t.\tpython’ re 模块的一般使用步骤如下: 使用 compile() 函数将正则表达式的字符串形式编译为一个 Pattern 对象 通过 Pattern 对象提供的一系列方法对文本进行匹配查找,获得匹配结果,一个 Match 对象。 最后使用 Match 对象提供的属性和方法获得信息,根据需要进行其他的操作 compile 函数 compile 函数用于编译正则表达式,生成一个 Pattern 对象,它的一般使用形式如下: import re 将正则表达式编译成 Pattern 对象 pattern = re.compile(r’\d+’) 在上面,我们已将一个正则表达式编译成 Pattern 对象,接下来,我们就可以利用 pattern 的一系列方法对文本进行匹配查找了。 Pattern 对象的一些常用方法主要有: match 方法:从起始位置开始查找,一次匹配 search 方法:从任何位置开始查找,一次匹配 findall 方法:全部匹配,返回列表 finditer 方法:全部匹配,返回迭代器 split 方法

ES6面试篇一

白昼怎懂夜的黑 提交于 2020-02-25 20:11:17
let 和 const let 和 var ES5使用 var 声明变量并没有块级作用域,会造成 for 循环的变量污染,变量名重复和变量提升的问题。 ES6新增 let 声明变量,变量只在代码块中有效,不存在变量提升的问题。 暂时性死区 TDZ const 和 let 声明变量前均为暂时性死区,在暂时性死区中,变量不能够被使用。 TDZ的本质:进入作用域后,变量已存在但声明后才可获取。 const 声明常量,且必须初始化。 本质维护内存栈中的保存的数据或地址不变,因此基本数据类型不会改变,引用数据类型可以增添修改属性。 字符串的拓展 字符串遍历器接口 for of 可直接遍历字符串,但最大优点在于可识大于0xFFFF码点的字符串。 字符串的拓展方法 确定字符串是否存在 includes() , startsWith() , endsWith() let str = "hello world" str . includes ( "o" ) //true str . includes ( "" ) //true str . startsWith ( "hello" ) //true str . endsWith ( "world" ) //true 重复字符串 "x" . repeat ( 3 ) //"xxx" 补全字符串 "1" . padStart ( 10 , "0" ) /

软工网络 16个人作业2

对着背影说爱祢 提交于 2020-02-25 18:58:59
软工网络 16个人作业2 1. 地址 博客地址 git地址 2.个人的PSP表格。 PSP2.1 个人开发流程 预估耗费时间(分钟) 实际耗费时间(分钟) Planning 计划 30 55 Estimate 明确需求和其他相关因素,估计每个阶段的时间成本 1000 1650 Development 开发 180 200 Analysis 需求分析 (包括学习新技术) 180 190 Design Spec 生成设计文档 40 40 Design Review 设计复审 40 60 Coding Standard 代码规范 15 15 Design 具体设计 30 30 Coding 具体编码 60 100 Code Review 代码复审 30 30 Test 测试(自我测试,修改代码,提交修改) 40 60 Reporting 报告 60 60 测试报告 30 30 计算工作量 30 30 事后总结,并提出过程改进计划 20 20 3、解题思路描述。 题目要求: 统计字符数 统计有效行数 统计单词数 统计词频并输出前十个单词 解题过程: 1、统计字符数 忽略汉字,空格、字母与数字的ASCII码值范围在32-126,换行符ASCII码值为10,水平制表符ASCII码值为9。 利用InputStreamReader输入流从文件中读取单个字符,定义一个字符计数器。循环读取单个字符

一、变量和数据类型

徘徊边缘 提交于 2020-02-25 15:53:55
目录 1. 变量 1.1 定义 1.2 分类 1.3 变量命名 2. 数据类型 2.1 数字 2.2 布尔类型 2.3 字符串 2.4 列表 2.5 元组 2.6 集合 2.7 字典 1. 变量 1.1 定义 变量是用来存储数据的量,变量名由字母、数字、下划线组成的,且不能以数字开头。此外,在编程的过程中,所有变量的命名都要做到见名知意。 1.2 分类 全局变量 作用范围在全局的变量,例如:一个类中定义的类变量,类中所有的方法都可以使用该变量。 局部变量 作用范围在局部的变量,例如:一个类中的方法定义的方法变量,该变量只能在该方法中使用,而不能给类中的其他方法使用。 1.3 变量命名 下划线命名法 单词之间用下划线连接的命名方式,例如:auto_test。在Python中,一般默认函数名的命名方式采用下划线命名法。 驼峰命名法 小驼峰命名法 除首字母小写外之后的每个单词的首字母大写的命名方式,例如:autoTest。 大驼峰命名法 每个单词的首字母大写的命名方式,例如:AutoTest。一般默认类名的命名方式采用大驼峰命名法。 注意 在变量命名时要避开使用关键字来作为变量名。 2. 数据类型 2.1 数字 整数 int表示整数类型。 浮点数 float表示浮点数类型。 注意 int和float类型都是不可变的。 2.2 布尔类型 格式 bool,布尔类型的值只有两个

JavaScript运算符有哪些

房东的猫 提交于 2020-02-25 15:26:52
JavaScript中的运算符有很多,主要分为算术运算符,等同全同运算符,比较运算符,字符串运算符,逻辑运算符,赋值运算符等。这些运算符都有一些属于自己的运算规则,下面就为大家介绍一下JavaScript中的运算符。 一、JavaScript运算符的种类 1、算术运算符 :+ 、 - 、* 、 / 、 % 、 -(一元取反) 、 ++ 、 -- 2、等同全同运算符 :== 、 ===、 !== 、 !=== 3、比较运算符 :< 、 > 、 <= 、 >= 4、字符串运算符 :< 、 > 、 <= 、 >= 、 = 、 + 5、逻辑运算符 :&& 、 ||、 !、 6、赋值运算符 :=、 +=、 *=、 -=、 /= 二、JavaScript运算符的规则 1、算术运算符规则 “+”:可以进行“加法”与“连接”运算;如果2个运算符中的一个是字符串,javascript就将另一个转换成字符串,然后将2个运算数连接起来。 “+”:如果一个运算数是对象,javascript就会将对象转换成数字做加法运算或者字符串做连接运算; “-”“*”“/” 如果2个运算数中的一个是是非数字,则将它转化成数字执行数学运算。 “/” 在javascript中,由于所有的数都是浮点数,除法的结果都是浮点数,5 / 2 = 2.5 ;除数为0的结果为正负无穷;0/0为NaN; “%”模运算符

(隐式) 类型转换

早过忘川 提交于 2020-02-25 15:24:44
(隐式) 类型转换 一。 1,假如比较的是字符串:按位比较。字符编码:ASCII 码 A:65 a:97 ​ 数字<大写字母<小写字母 "98" > "A" //false 按位进行比较,9<A(65) 2.js是一个基于原形的动态类型的弱类型的脚本语言。 ​ 弱类型:声明变量的时候不需要给定数据类型,代码执行的时候灵活的改变类型。 ​ 动态类型:类型之间没有严格的隔离的,使用不同的类型进行计算:最终结果一定是6大类型之一。在运算过程中进行转换:A数据类型 =》B数据类型。如:123 =》“123”。 二.隐式类型转换。只是基本数据类型(数值,字符串,布尔,null,undefined,)和复杂数据类型(对象) 本质上不会改变原来的变量的值,只是在运算的时候,悄悄地转成能够计算的值。所以叫隐式类型转换 let a = 1 console . log ( a + "1" ) //11 console . log ( a ) //1 1.转字符串:数据类型转换的桥梁(如果直接转别的类型不可以,则可以通过先转成字符串,再转对应类型)。 (1)数值类型转字符串。加法运算符中如果有字符串参与到加法中,会将数值转为字符串。 1 + "" //"1" 1 / 0 // Infinity 1 / - 0 //-Infinity - 0 + "" // "0" 0分为0和-0

17.Go语言内置包之strconv

人盡茶涼 提交于 2020-02-25 15:23:34
1.strconv包 strconv包实现了基本数据类型与其字符串表示的转换,主要有以下常用函数:Atoi(),Itia(),parse系列,format系列,append系列。 1.1string与int类型转换 1.1.1Atoi() Atoi()函数用于将字符串类型的整数转换为int类型 func Atoi(s string) (i int, err error) 如果传入的字符串参数无法转换为Int类型,就会返回错误。 package main import ( "fmt" "strconv" ) func main() { s1 := "100" i1,err := strconv.Atoi(s1) if err != nil{ fmt.Println("can not convert to int") }else{ fmt.Printf("type:%T value:%#v\n",i1,i1) } } 结果: type:int value:100 Process finished with exit code 0 1.1.2Itoa() Itoa()函数用于将int累心数据转换为对应的字符串表示。 func Itoa(i int) string package main import ( "fmt" "strconv" ) func main() { i1 := 100

Python基本数据类型和数据结构

£可爱£侵袭症+ 提交于 2020-02-25 12:56:38
Python基本数据类型 Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。 Python3 中有六个标准的数据类型: Number(数字) String(字符串) List(列表) Tuple(元组) Set(集合) Dictionary(字典) Python3 的六个标准数据类型中: 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组); 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。 Number(数字) Python3 支持 int、float、bool、complex(复数)。 在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。 像大多数语言一样,数值类型的赋值和计算都是很直观的。 >> > 5 + 4 # 加法 9 >> > 4.3 - 2 # 减法 2.3 >> > 3 * 7 # 乘法 21 >> > 2 / 4 # 除法,得到一个浮点数 0.5 >> > 2 // 4 # 除法,得到一个整数 0 >> > 17 % 3 # 取余 2 >> > 2 ** 5 # 乘方 32 注意: 1

前端基础之JavaScript

一个人想着一个人 提交于 2020-02-25 12:38:47
JavaScript概述 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中),后将其改名ScriptEase(客户端执行的语言)。 Netscape(网景)接收Nombas的理念,( Brendan Eich) 在其Netscape Navigator 2.0产品中开发出一套livescript的脚本语言。Sun和Netscape共同完成,后改名叫JavaScript。 微软随后模仿在其IE3.0的产品中搭载了一个JavaScript的克隆版叫Jscript。 为了统一三家,ECMA( 欧洲计算机制造协会)定义了ECMA-262规范.国际标准化组织及国际电工委员会(ISO/IEC)也采纳 ECMAScript 作为标准(ISO/IEC-16262)。从此,Web 浏览器就开始努力(虽然有着不同的程度的成功和失败)将 ECMAScript 作为 JavaScript 实现的基础。 ECMA-262 是 JavaScript 标准的官方名称。 ECMAScript 年份 名称 描述 1997 ECMAScript 1 第一个版本 1998 ECMAScript 2 版本变更 1999 ECMAScript 3 添加正则表达式 添加tru/catch ECMAScript 4 没有发布 2009