资讯专栏INFORMATION COLUMN

JavaScript 字符串简介

CKJOKER / 1117人阅读

摘要:字符串的定义字符串的概念字符串就是一串字符,由双单引号括起来。字符串是的一种数据类型。

字符串的定义

JS字符串的概念
字符串就是一串字符,由双(单)引号括起来。
字符串是 JavaScript 的一种数据类型。

字符串的创建

方式一(推荐): var str = "海贼王"; //基本类型
定义了一个字符串变量str,内容为"海贼王"

方式二: var str = new String("火影"); //引用类型
定义一个字符串变量str,内容为火影,
注意: 此刻str为引用类型(object对象)

     用new产生的变量都是引用类型的变量,也叫对象

方式三: var str = String("柯南");
基本类型: string, number, boolean, undefined等
引用类型/对象: Array , Date, Object, String, Function等

new String()和String()的区别
var s1 = new String("千与千寻");
var s2 = String("千与千寻");
console.log(typeof s1); //object
console.log(typeof s2); //string

当String()和元素符new一起使用, 那么String()是作为构造函数使用的,它返回的是一个新创建的String对象. (构造函数后面课程会讲)
当不用new运算符调用String()时,它只是转换成原始的字符串,并返回转换后的值.

字符串的属性

.length: 表示字符串的长度
例如 : var str = "how are you";

       console.log(str.length);
       console.log(str[0]);  //获取字符串中对应下标的字符

注意: ECMAScript 中的字符串是不可变的; 也就是说,字符串一旦创建,它们的值就不能改变.
例如: var str = "how are you";

         str[0] = "year";  //不会改变

如果要改变某个变量保存的字符串,首先要销毁原来的字符串,然后再用另一个包含新值的字符串填充该变量.
var str = hello"";
str = str+"world!";

字符串的获取

str.charAt(x); 返回指定索引的字符

返回在字符串str里索引(位置、下标)为x的字符

str.charCodeAt(x); 返回的是位于指定索引的字符的编码 (ASCII码)

返回在字符串str里索引为x的字符的编码(ASCII码)

将ASCII编码转换成字符 (该方法是String的静态方法,所以用String调用)

String.fromCharCode(73,76,79,86,69,85); //"ILOVEU"

字符串连接

str.concat("xx","yy");字符串连接(连接多个用逗号分隔开)

字符串str连接字符串"xx","yy"

字符串查找

str.indexOf("xxx"); 返回某个指定的字符串值在字符串中首次出现的位置

返回在字符串str里查找字符"xxx"第一次出现的位置(索引), 如果没找到则返回-1

str.lastIndexOf("xxx"); 返回一个指定的字符串值最后出现的位置

返回在字符串str查找字符"xxx"最后一次出现(从后向前搜索)的索引, 如果没找到则返回-1

str.search(): 查找第一次出现的位置, 但是参数可以是正则表达式

var str = "ABCdabcd";
var index = str.search("abc");
console.log(index); //4

//  /abc/ : 两个斜杠是正则表达式的语法(类似数组要写[]),中间就是你要匹配的字符串
//  g: global代表全局范围, i:ignore忽略大小写
var index = str.search(/abc/gi);
console.log(index);
字符串替换

str.replace(); 替换字符串

//在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
//str.replace(参数1,参数2)
//参数1是原字符串的某些字符,参数2是新替换的字符串内容
//返回一个新的(重新替换后的)字符串

 例如: var str = "how are Are are you!";
         var newStr = str.replace("are","old are");

这里的替换只能执行一次,不能够进行全局匹配,如果需要全局匹配,则应使用正则表达式: str.replace(/are/gi, "old are") //g表示进行全局匹配,i表示匹配的时候忽略大小写
字符串的截取与拆分

str.substring(开始索引,结束索引); 截取字符串 范围是[开始索引,结束索引)

如果只有一个参数, 则表示到字符串最后

str.split(separator, howmany); 根据分隔符、拆分成数组

separator(字符串或正则表达式)
howmany(可以指定返回的数组的最大长度, 可以省略)
注:如果空字符串("")用作separator, 那么stringObject中的每个字符之间都会被分割。

str.toLowerCase(); 把字符串转换成小写

str.toUpperCase(); 把字符串转换成大写

Math对象
Math对象可以用于执行数学任务

Math对象的常用函数:

Math.round(3.6) //四舍五入
Math.random() //返回0-1之间的随机数
Math.max(num1, num2) //返回较大的数
Math.min(num1, num2) //返回较小的数
Math.abs(num) //绝对值
Math.ceil(19.3) //向上取整
Math.floor(11.8) //向下取整
Math.pow(x, y) //x的y次方
Math.sqrt(num) //开平方

console.log(Math.round(3.49)); //3,四舍五入
console.log(Math.random()); //随机数

console.log(Math.max(3, 4)); //4,较大值
console.log(Math.min(3, 4)); //3,较小值

console.log(Math.abs(-3)); //3,绝对值

console.log(Math.ceil(2.1)); //3, 向上取整
console.log(Math.floor(2.9)); //2, 向下取整

console.log(Math.pow(4, 3)); //64, 4的3次方
console.log(Math.sqrt(64)); //8, 开根号

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/100760.html

相关文章

  • React文档翻译系列(三)JSX简介

    摘要:文档翻译系列三简介先来看一下下面的变量声明这种有趣的标签语法既不是字符串也不是。这种形式被称作,他是的一种扩展语法。为便于阅读,我们将分隔成多行。表示对象将编译成调用。我们建议您为选择的编辑器搜索语法方案,以便和代码都能够被正确高亮的显示。 React文档翻译系列(三)JSX简介 先来看一下下面的变量声明: const element = Hello world! 这种有趣的标签语法既...

    wean 评论0 收藏0
  • JavaScript编程语言简介

    摘要:介绍是世界上最流行的编程语言之一。作为第一个也是唯一一个由浏览器本机支持的脚本语言。的基本定义是一种编程语言,它是高级的它允许您忽略运行它的机器的详细信息。,也称为变化也是巨大的。目前最新批准的版本是 介绍 JavaScript是世界上最流行的编程语言之一。 自20年前创建以来,它来已经走了很长一段路。 作为第一个也是唯一一个由Web浏览器本机支持的脚本语言。 在一开始,它并没有像现在...

    hiyang 评论0 收藏0
  • JavaScript 权威指南》读书笔记 1 - 简介

    摘要:原文第一章主要介绍的大概情况基本语法。通过和来引用对象属性或数组元素的值就构成一个表达式。 原文:https://keelii.github.io/2016/06/16/javascript-definitive-guide-note-0/ 第一章 主要介绍 JavaScript 的大概情况、基本语法。之前没有 JavaScript 基础的看不懂也没关系,后续章节会有进一步的详细说明...

    sydMobile 评论0 收藏0
  • JSON简介

    1.JSON语法 JSON是一种轻量级的数据交换格式。JSON语法可以表示以下三种类型的值: 简单值:string,number,boolean,null,不支持undefined 对象 数组 语法: JSON字符串必须使用双引号 没有声明变量 没有末尾的分号 2.JSON解析与序列化 2.1JSON序列化 序列化函数:JSON.stringify()JSON.stringify()可接收...

    LucasTwilight 评论0 收藏0
  • web开发中URL编码简介

    摘要:大部分需要编码的原因是由于有特殊字符如等或者参数是中文形式。不会被此方法编码的字符重点因此,对于中文字符串来说,如果不希望把字符串编码格式转化成格式的比如原页面和目标页面的是一致的时候,只需要使用。 一、为什么要 urlencode()? 因为当字符串数据以url的形式传递给web服务器时,字符串中是不允许出现空格和特殊字符的。 也就是说,url的参数传递的时候,需要遵循一定的url...

    forsigner 评论0 收藏0

发表评论

0条评论

CKJOKER

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<