资讯专栏INFORMATION COLUMN

javaScript常用内置对象

keke / 2718人阅读

摘要:和的是子字符串最后一个字符后面的位置。而的第二个参数指定的则是返回字符的个数。

Array

创建数组的基本方式有两种:

使用Array构造函数

语法:new Array()

例子: var num = new Array();

使用数组字面量表示法

例子:var colors = ["red","yellow"];

获取数组长度:arr.length

数组的栈和队列方法:

push() 添加

pop() 删除并返回数组最后一元素

unshift() 添加到数组的最前面

shift() 删除并返回数组第一个元素

var colors = new Array();
var count = colors.push("red","green","orange");
console.log(count);  //3
var item = colors.pop();   //取得最后一项 orange
console.log(item); 
console.log(colors.length);  //2

var colors = new Array();
var count = colors.unshift("red","green");
count = colors.unshift("black");  //添加到数组第一个元素
console.log(colors);
var item = colors.shift();   //取得第一项 black
console.log(item);  
console.log(colors.length);  //2

将数组转换为字符串:join() 语法:arr.join(separator)

var words = ["border","left"];
var wordstr = words.join();
console.log(wordstr);       //结果为:border,left   join()默认是逗号隔开

var wordstr = words.join("-");
console.log(wordstr);  //结果为:border-left

反转数组顺序:arr.reverse()

var values = [1,2,3,4,5];
var newValues = values.reverse();
console.log(newValues);

数组排序:arr.sort();

var arr = [9,5,45];
arr.sort(function(a,b){return b-a});  //降序
arr.sort(function(a,b){return a-b});  //升序

连接两个或多个数组:concat()

var arr1 = ["a","b"],
    arr2 = ["c","d"],
    arr3;
arr3 = arr1.concat(arr2);
console.log(arr3);

从已有的数组中返回选定的元素:arr.slice(start,end)

var colors = ["red","green","blue"];
var newColors = colors.slice(1,2);
console.log(newColors);     //结果输出 green

var newColors = colors.slice(0);
console.log(newColors);     //结果输出 ["red","green","blue"]

var newColors = colors.slice(-1,3);   //负数 + 数组长度
console.log(newColors);     //结果输出 blue

splice()方法删除数组项、插入数组项、替换数组项

删除
语法:arr.splice(index,count)

var arr = ["a","b","c"];
var delArr = arr.splice(1,1);
console.log(delArr);  //返回 b

插入
语法:arr.splice(index,0,item1,..intemX) 起始位置,要删除的项数,要插入的项

var arr = ["a","b","c"];
var insertArr = arr.splice(3,0,"m");
console.log(arr);  //["a","b","c","m"]

替换

var arr = ["a","b","c"];
var replaceArr = arr.splice(1,2,"x","y");
console.log(replaceArr);  //["b","c"]
console.log(arr);          //["a","x","y"]

ECMAScript为数组实例化添加的两个位置方法:

indexOf()
语法:arr.indexOf(searchvalue,startIndex) 参数一:必需,要查找的项;参数二:可选,起点位置的索引

//功能:从数组的开头(位置0)开始向后查找,没有找到的情况下返回-1
var nums = [1,2,3,4,5,6];
var pos = nums.indexOf(2);
console.log(pos);  //返回3的位置 2

lastIndexOf()

var nums = [1,2,3,4,5,2,6];
var pos = nums.lastIndexOf(2);
console.log(pos);  //返回2的位置 5
String

字符方法:

chartAt()

charCodeAt()

//访问字符串中的特定字符
var str = "hello world";
console.log(str.charAt(0));  //返回本身字符 h
console.log(str.charCodeAt(0));  //返回本身的字符编码 104

字符串操作方法:

concat()

//用于将一或多个字符串拼接起来,返回拼接得到的新字符串
//但实践中使用更多是加号操作符(+)
var str = "hello ";
var result = str.concat("world");
console.log(result);  //输出 hello world

截取子字符串:slice(start,end)、substring(start,end)、substrr(start,len) len代表返回字符个数

//start:必需,指定子字符串的开始位置       end:可选,表示子字符串到哪里结束
var str = "hello world";
console.log(str.slice(3));  //lo world
console.log(str.substring(3));  //lo world
console.log(str.substr(3));   //lo world
console.log(str.slice(3,5));  //lo
console.log(str.substring(3,5));  //lo
console.log(str.substr(3,5));  //lo wo
console.log(str.slice(-3));  //rld   负数 + 字符串长度
console.log(str.substring(-3));  //hello world  会将所有负值参数都转换为0
console.log(str.substr(-3));   //rld   
console.log(str.slice(3,-4));  //lo w
console.log(str.substring(3,-4));  //hel
console.log(str.substr(3,-4));   //""(空字符串)  参数一:负数+字符串长度  参数二:转换为0

总结:slice()、substr()、substring() 基于字符串创建新字符串的方法,第一个参数指定子字符串的开始位置,第二个参数(在指定的情况下)表示子字符串到哪里结束。slice()和substring()的是子字符串最后一个字符后面的位置。而substr()的第二个参数指定的则是返回字符的个数。如果没有给这些方法传递第二个参数,则将字符串的末尾作为结束位置

字符串位置方法

indexOf()

lastIndexOf()

//从一个字符串中搜索给定的子字符串,返回子字符串的位置     
// 返回值:数值
//如果没有找到该子字符串,则返回-1
var email= "marry@163.com";
console.log(email.indexOf("@"));  //返回 5
var email= "marry.mail@163.com";
console.log(email.lastIndexOf("."));  //返回 14

示例:

//获取扩展名
var url = "http://baidu.com/index.txt";
function getFileFormat(url){
     var pos = url.lastIndexOf(".");
     return url.substr(pos);
}
var formatName = getFileFormat(url);
console.log(formatName);

trim()方法

//删除前置及后缀的所有空格
var str = "  hello world  ";
var newStr = str.trim();
console.log(newStr); //hello world

字符串大小写转换

var str = "hello world";
console.log(str.toUpperCase());  //大写
console.log(str.toLowerCase());  //小写

把一个字符串分割成字符串数组:split()

var str = "welcome-to-beijing";
var arr = str.split("-");
console.log(arr);  //输出 ["welcome", "to", "beijing"]

在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串:replace()

var str = "cat,bat,sat";
var result = str.replace("at","ond");
var newResult = str.replace("/at/g","ond");   //替换所有
console.log(result);  //输出 cond,bat,sat 只是替换第一个
Math

min()和max()方法

var max = Math.max(1,2,3,4);
console.log(max);                //4
var min= Math.min(1,2,3,4);
console.log(min);   //1

舍入方法 Math.ceil() Math.floor() Math.round()

console.log(Math.ceil(25.6)); //26,向上舍入
console.log(Math.round(25.5));  //26,四舍五入
console.log(Math.floor(25.6)); //25, 向下舍入

random()方法

//值 = Math.floor(Math.random() * 可能值的总数 + 第一个可能的值)
var num = Math.floor(Math.random() * 10 + 1);
console.log(num);  //输出1-10之间的数值
var num = Math.floor(Math.random() * 9 + 2);
console.log(num);  //输出2-10之间的数值
Date

创建一个日期对象

var now = new Date();

日期格式化方法

var now = new Date();
console.log(now.toDateString());   //Wed May 01 2019
console.log(now.toTimeString());   //11:26:38 GMT+0800 (中国标准时间)
console.log(now.toLocaleDateString());   //2019/5/1
console.log(now.toLocaleTimeString());   //上午11:26:38
console.log(now.toUTCString());          //Wed, 01 May 2019 03:26:38 GMT

日期/时间组件方法

set/getFullYear   设置/返回4位数的年份   set/getMonth()  设置/返回月份(0表示一月,11表示十二月)
set/getDate() 设置/返回天数(1到31)     set/getDay() 设置/返回星期几(0表示星期日,6表示星期六)
set/getHours() 设置/返回小时(0到23)   set/getMinutes 设置/返回分钟数(0到59)
set/getSeconds 设置/返回秒数(0到59)
第一次尝试着写,写得不好的地方,请多多指教

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

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

相关文章

  • 白话原型和原型链

    摘要:二原型和原型链其实,原型这个名字本身就很容易产生误解,原型在百度词条中的释义是指原来的类型或模型。对象的原型是通过创建的对象,其原型是而的原型是,从而两个原型对象和有了继承关系三和这是容易混淆的两个属性。 关于原型和原型链的介绍,网上数不胜数,但能讲清楚这两个概念的很少,大多数都是介绍各种对象、属性之间如何指来指去,最后的结果就是箭头满天飞,大脑一团糟。本文将从这两个概念的命名入手,用...

    lijy91 评论0 收藏0
  • JavaScript中数组排序深度讲解

    摘要:结果为依次为循环语句结果依次为,,代码解读语句看着有点像语句,但是和语句不同的是它不可以循环对象,只能循环数组。 ES5和ES6数组遍历方法详解 在ES5中常用的10种数组遍历方法: 1、原始的for循环语句2、Array.prototype.forEach数组对象内置方法3、Array.prototype.map数组对象内置方法4、Array.prototype.filter数组对象...

    xbynet 评论0 收藏0
  • 前端培训-初级阶段(13) - ECMAScript (内置对象、函数)

    摘要:前端培训初级阶段语法变量值类型运算符语句上节的基础内容知识,这节我们会用到。这意味着开发者不必明确实例化内置对象,它已被实例化了。不进行有效性检查。对象是自年月日起经过的毫秒数。 前端最基础的就是 HTML+CSS+Javascript。掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些。前端小课堂(HTML/CSS/JS),本着提升技术水平,打牢基础知识的中...

    fobnn 评论0 收藏0
  • JavaScript - 原型&原型链

    摘要:可以看出,这个查找过程是一个链式的查找,每个对象都有一个到它自身原型对象的链接,这些链接组件的整个链条就是原型链。原型的构建字面量方式当通过字面量方式创建对象时,它的原型就是。 面向对象 JavaScript没有类(class)的概念的(ES6 中的class也只不过是语法糖,并非真正意义上的类),而在JavaScript中,在 JavaScript 中,除了 String, Numb...

    wean 评论0 收藏0
  • 一篇文章带你理解原型和原型链

    摘要:上面的代码,运行以后,我们可以看到因为的原型是指向的实例上的,所以可以访问他的属性值,那如果我不想让访问的构造函数里声明的属性值,那怎么办呢只需要将指向的原型而不是实例就行了。 走在前端的大道上 本篇将自己读过的相关 javascript原型和原型链 文章中,对自己有启发的章节片段总结在这(会对原文进行删改),会不断丰富提炼总结更新。 文章——深入理解javascript之原型 一般的...

    yintaolaowanzi 评论0 收藏0

发表评论

0条评论

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