js 小复习1
1、数组
增删改查
var arr = [, , , , ];
// arr.push(18); // 添加数组后面 更改长度
// arr.unshift(12); // 添加数组前面
// arr.pop(); // 删除数组最后一个元素 返回该删除的值 更改数组长度
// arr.shift(); // 删除数组第一个元素
// arr.splice(2,1); // 从索引2开始删除一个元素
// arr.splice(2,0,14); // 在索引2的位置添加数值
console.log(arr);
2、数组合并
// 数组合并方法
// var vegetables = ['parsnip', 'potato'];
// var moreVegs = ['celery', 'beetroot'];
// // 将第二个数组融合进第一个数组
// // 相当于 vegetables.push('celery', 'beetroot');
// Array.prototype.push.apply(vegetables, moreVegs);
// console.log(vegetables);
let arr1 = ["a", "b", "c"];
let arr2 = ["d", "e", "f"]; let arr3 = arr1.concat(arr2); // arr1 在前 同时也可以合并非数组 console.log(arr3);
3、通过数组push 为对象添加属性
// 通过数组push为对象添加属性
var obj = {
length: ,
addElem: function addElem(elem) {
// obj.length is automatically incremented
// every time an element is added.
[].push.call(this, elem);
}
};
// Let's add some empty objects just to illustrate.
obj.addElem({'name':''});
obj.addElem({});
console.log(obj.length); //
console.log(obj);
// {0: {…}, 1: {…}, length: 2, addElem: ƒ}
// 0:{name: "1233"}
// 1:{}
// addElem:ƒ addElem(elem)
// length:2
// __proto__:Object
</script>
4、数组与字符串相互转化 join() split()
var arr = [, , , , ];
arr = arr.join('') // 数组转化字符串
console.log(arr); var str = '';
var strArr = str.split('');
console.log(strArr);
//(9) ["1", "2", "2", "2", "3", "4", "4", "5", "5"]
5、字符串截取 substring slice substr
var anyString = "Mozilla";
console.log(anyString.substring(, ));
console.log(anyString.substring(, ));
// 即使截取负数或NaN 都视为0 ,也可倒着截取 var str1 = 'The morning is upon us.';
var str2 = str1.slice(, -);
console.log(str2); // OUTPUT: morning is upon u
// slice() 提取的新字符串包括beginSlice但不包括 endSlice。
// slice 截取允许负数 负数 + 字符长度 var str = "abcdefghij";
console.log(str.substr(,)); // bc
// substr 开始索引位置为负数时, 负数 + 长度
// 第二参数是截取的长度
6、 字符串与正则表达式匹配 match()
// match 返回的是数组 没有返回null [0]
var str = 'For more information, see Chapter 3.4.5.1';
var re = /see (chapter \d+(\.\d)*)/i; []
var found = str.match(re); console.log(found); // logs [ 'see Chapter 3.4.5.1',
// 'Chapter 3.4.5.1',
// '.1',
// index: 22,
// input: 'For more information, see Chapter 3.4.5.1' ] // 'see Chapter 3.4.5.1' 是整个匹配。
// 'Chapter 3.4.5.1' 被'(chapter \d+(\.\d)*)'捕获。
// '.1' 是被'(\.\d)'捕获的最后一个值。
// 'index' 属性(22) 是整个匹配从零开始的索引。
// 'input' 属性是被解析的原始字符串。
7、字符串替换
var str = 'Twas the night before Xmas...';
var newstr = str.replace(/xmas/i, 'Christmas');
console.log(newstr); // Twas the night before Christmas...
8、lastIndexOf indexOf
// lastIndexOf() 方法返回指定值在调用该方法的字符串中最后出现的位置,如果没找到则返回 -1。从该字符串的后面向前查找,从 fromIndex 处开始。
// 索引倒着来
console.log("canal".lastIndexOf("a",)); // -1
// indexOf() 方法返回调用 String 对象中第一次出现的指定值的索引, 开始在 fromIndex进行搜索。
// 如果未找到该值, 则返回 - 1。
9、字符串其他
// 字符串其他
// trim() 方法会从一个字符串的两端删除空白字符。
// valueOf() 方法返回一个String对象的原始值(primitive value)。
// toUpperCase() 将调用该方法的字符串值转换为大写形式
// toLowerCase() 会将调用该方法的字符串值转为小写形式,并返回。
// normalize() 方法会按照指定的一种 Unicode 正规形式将当前字符串正规化.
// includes() 方法用于判断一个字符串是否包含在另一个字符串中,根据情况返回true或false。
// endsWith()方法用来判断当前字符串是否是以另外一个给定的子字符串“结尾”的,根据判断结果返回 true 或 false。
js 小复习1的更多相关文章
- js 小复习2
1.数组 findIndex() indexOf() // findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引.否则返回-1. function isBigEnough(ele ...
- React.js 小书 Lesson16 - 实战分析:评论功能(三)
作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson16 转载请注明出处,保留原文链接和作者信息. 接下来的代码比较顺理成章了.修改 Commen ...
- js小功能整理
/** * 判断是否包含字符串某字符串 * @param {[type]} str [被检测的字符串] * @param {[type]} substr [检测是否含有的字符串] * @return ...
- [转载]Js小技巧||给input type=“password”的输入框赋默认值
http://www.cnblogs.com/Raywang80s/archive/2012/12/06/2804459.html [转载]Js小技巧||给input type="passw ...
- 一些js小题(一)
一些js小题,掌握这些对于一些常见的面试.笔试题应该很有帮助: var a=10; function aa(){ alert(a); } function bb(){ aa(); } bb();//1 ...
- 第24篇 js小知识和“坑”
前面说了说了js的相关知识,基本上除了语法外,把项目常用的知识做了一个梳理,现在说下js的其它方面的知识,这些知识不成体系,属于不理解对于一般开发没什么太多影响,但如果理解清楚,可以更好去开发. js ...
- React.js 小书介绍
React.js 小书 Github 关于作者 这是一本关于 React.js 的小书. 因为工作中一直在使用 React.js,也一直以来想总结一下自己关于 React.js 的一些知识.经验.于是 ...
- JS基础 复习: Javascript的书写位置
爱创课堂JS基础 复习: Javascript的书写位置复习 js书写位置:body标签的最底部.实际工作中使用书写在head标签内一对script标签里.alert()弹出框.console.log ...
- 一个js小游戏----总结
花了大概一天左右的功夫实现了一个js小游戏的基本功能,类似于“雷电”那样的小游戏,实现了随即怪物发生器,碰撞检测,运动等等都实现了,下一个功能是子弹轨迹,还有其他一些扩展功能,没有用库,也没有用web ...
随机推荐
- JDK源码分析之concurrent包(一) -- Executor架构
Java5新出的concurrent包中的API,是一些并发编程中实用的的工具类.在高并发场景下的使用非常广泛.笔者在这做了一个针对concurrent包中部分常用类的源码分析系列.本系列针对的读者是 ...
- jquery全景拖动查看效果
http://sc.chinaz.com/jiaoben/140722166830.htm
- HTTP请求 蜘蛛的 user-agent
百度爬虫 * Baiduspider+(+http://www.baidu.com/search/spider.htm”) google爬虫 * Mozilla/5.0 (compatible; Go ...
- django博客项目11
.....................
- 【我的Android进阶之旅】解决 Error:CreateProcess error=216, 该版本的 %1 与您运行的 Windows 版本不兼容。请查看计算机的系统信息,了解是否需要 x86
一.错误描述 刚刚打开Android Studio新建一个项目,然后就编译不了,报了如下所示的错误: 错误描述为: Error:CreateProcess error=216, 该版本的 %1 与您运 ...
- java内存相关
(类是对象的抽象,而对象是类的具体实例.类是抽象的,不占用内存,而对象是具体的,占用存储空间.) 1.java是如何管理内存的 java的内存管理就是对象的分配和释放问题.(其中包括两部分) 分配:内 ...
- linux c编程:记录锁
记录锁相当于线程同步中读写锁的一种扩展类型,可以用来对有亲缘或无亲缘关系的进程进行文件读与写的同步,通过fcntl函数来执行上锁操作.尽管读写锁也可以通过在共享内存区来进行进程的同步,但是fcntl记 ...
- Java基础—枚举
定义 枚举(enum)类型是Java 5新增的特性,它是一种新的类型,允许用常量来表示特定的数据片断,而且全部都以类型安全的形式来表示. 为什么要用枚举 在java语言中还没有引入枚举类型之前,表示枚 ...
- python编码总结
关于ASCII码和Unicode码的来源 计算机只能处理数字,如果要处理文本,需要先将文本转换成数字.早期计算机采用8bit作为一个字节(byte).所以一个字节最大为255(二进制11111111= ...
- 转:探索C++0x: 1. 静态断言(static_assert)
转自:http://www.cppblog.com/thesys/articles/116985.html 简介 C++0x中引入了static_assert这个关键字,用来做编译期间的断言,因此叫做 ...