javascript基础知识(字符串)

javaScritp初学(字符串)

1.字符串

(1)JavaScript 字符串用于存储和处理文本。

(2)字符串可以存储一系列字符,如 "John Doe"。

          字符串可以是插入到引号中的任何字符。你可以使用单引号或双引号:

实例:varcarname = "Volvo XC60";

varcarname = 'Volvo XC60';

(3)你可以使用索引位置来访问字符串中的每个字符,字符串的索引从 0 开始,这意味着第一个字符索引值为 [0],第二个为 [1], 以此类推。

实例:var character = carname[7];

(4)你可以在字符串中使用引号,字符串中的引号不要与字符串的引号相同:

实例:var answer = "It's alright";

var answer = "He is called 'Johnny'";

var answer = 'He is called "Johnny"';

(5)你也可以在字符串添加转义字符来使用引号:

实例:var x = 'It\'s alright';

var y = "He is called \"Johnny\"";


特殊字符

在 JavaScript 中,字符串写在单引号或双引号来中。

因为这样,以下实例 JavaScript 无法解析:x

"We are the so-called "Vikings" from the north."

字符串 "We are the so-called " 被截断。

解决这个问题可以使用反斜杠 (\) 来转义 "Vikings" 字符串中的双引号,如下:

 "We are the so-called \"Vikings\" from the north."

 反斜杠是一个转义字符。 转义字符将特殊字符转换为字符串字符:

转义字符 (\) 可以用于转义撇号,换行,引号,等其他特殊字符。

下表中列举了在字符串中可以使用转义字符转义的特殊字符:


字符串可以是对象

           (1) 通常, JavaScript 字符串是原始值,可以使用字符创建: var firstName = "John"

但我们也可以使用 new 关键字将字符串定义为一个对象: var firstName = new String("John")

实例:var x = "John";

var y = new String("John");

typeof x // 返回 String

typeof y // 返回 Object

(2)不要创建 String 对象。它会拖慢执行速度,并可能产生其他副作用:

var x = "John";             

var y = new String("John");

(x === y) // 结果为 false,因为x是字符串,y 是对象(=== 为绝对相等,即数据类型与值都必须相等。)

(3)字符串属性和方法

原始值字符串,如 "John", 没有属性和方法(因为他们不是对象)。

原始值可以使用 JavaScript 的属性和方法,因为 JavaScript 在执行方法和属性时可以把原始值当作对象。

字符串属性

字符串方法



<script>
        /**
         * search():用于检索字符串中指定的子字符串或检索与正则表达式相匹配的子字符串
         * match(): 可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配
         */
        str = '/web/home/index.php';
        str2 = '/web/HOME/aa/home/index.php';

        pos = str.lastIndexOf('/');
//        alert(pos);//9

        file = str.substr(pos+1); //截取字符
//        alert(file);//index.php

        dir = str.substr(0,pos);
//        alert(dir);// /web/home

        arr = str.split('/');
//        alert(arr);// ,web , home , index.php ( arr.length=4 )
        strs = '2016-09/16';
        arr = strs.split(/-|\//); //2016,09,16 正则分割
//        alert(arr);

        index = str.search('home'); //5
        index2 = str2.search(/home/i); //支持正则表达式 i:忽略大小写  5
//        alert(index);

        s = str.match('home'); //home
        s2 = str2.match(/home/ig); //HOME,home g:逐行匹配
//        alert(s);

        res = str2.replace('HOME','home'); // /web/home/aa/home/index.php
        res2 = str2.replace(/HOME/ig,'zyzhang'); // /web/zyzhang/aa/zyzhang/index.php
//        alert(res2);

//        alert(str.toUpperCase()); //小写转大写
//        alert(str2.toLocaleLowerCase()); //大写转小写

        /**
         * eval():执行字符串表达式
         */
        //json字符串转json对象
        v = "{'username':'user1','age':20}";
        obj = eval('('+v+')');
//        alert("age:"+obj.age); //age:20

        //
        b = 'a=1+1' ;
        eval(b);
//        alert(a); //2

    </script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值