Javascript备忘复习笔记1
一.字符串操作
1.大小写
var s = "hello";
undefined
g = s.toUpperCase();
"HELLO"
g;
"HELLO"
g.toLowerCase();
"hello"
2.索引/截断
s.indexOf('o');
4
all.js:1 loading comments...
var l = "hello world";
undefined
l.substring(0,5);
"hello"
l.substring(7);
"orld"
二.数组
1.索引/长度
var arr = [1, 2, 3.14, 'Hello', null, true];
undefined
arr.length;
6
arr[2]=99;
99
arr;
[1, 2, 99, "Hello", null, true]
2.切片
arr;
[1, 2, 99, "Hello", null, true]
arr.slice(1,3);
[2, 99]
3.pop/push与shift/unshift(从头删除,从头插入)
arr;
[1, 2, 99, "Hello", null, true]
arr.pop();
true
arr;
[1, 2, 99, "Hello", null]
arr.push(1,"sd");
7
arr;
[1, 2, 99, "Hello", null, 1, "sd"]
arr.unshift('head','sec');
9
arr;
["head", "sec", 1, 2, 99, "Hello", null, 1, "sd"]
arr.shift();
"head"
arr;
["sec", 1, 2, 99, "Hello", null, 1, "sd"]
4.排序/翻转/指定索引删除
var arr = [1, 2, 3.14, 'Hello', null, true];
undefined
arr.sort();
[1, 2, 3.14, "Hello", null, true]
arr.reverse();
[true, null, "Hello", 3.14, 2, 1]
var arr = ['Microsoft', 'Apple', 'Yahoo', 'AOL', 'Excite', 'Oracle'];
undefined
arr.splice(2, 3, 'Google', 'Facebook');
["Yahoo", "AOL", "Excite"]
arr;
["Microsoft", "Apple", "Google", "Facebook", "Oracle"]
arr.splice(2,2);
["Google", "Facebook"]
5.数组的拼接
arr;
["Microsoft", "Apple", "Oracle"]
var lst = ['A','B','C'];
undefined
var lstadd = arr.concat(lst);
undefined
lstadd;
["Microsoft", "Apple", "Oracle", "A", "B", "C"]
lstadd.join('-');
"Microsoft-Apple-Oracle-A-B-C"
6.多维数组
三.对象
var xiaoming = {
name: '小明',
birth: 1990,
school: 'No.1 Middle School',
height: 1.70,
weight: 65,
score: null
};
undefined
xiaoming.name;
"小明"
xiaoming['name'];
"小明"
'name' in xiaoming;
true
xiaoming.hasOwnProperty('name');
true
四.循环
1.数组
var arr = ['Apple', 'Google', 'Microsoft'];
for (var i = 0; i <= arr.length; i++) {
alert(arr[i]);
}
2.列表
var arr = 'sdadda';
for (var i = 0; i <= arr.length; i++) {
alert(arr[i]);
}
3.对象(类似python的dict)
var o = {
name: "jack",
age: 20,
city: 'Beijing'
};
for (var key in o){
alert(o[key]);
}
五.Map/set(Map:类似python的dict)
1.Map取值
var m = new Map([
['Michael', 95], ['Bob', 75], ['Tracy', 85]
]);
alert(m.get('Michael'));
2.Map增/删值
var m = new Map();
m.set('alex',67);
m.set('bob',59);
alert(m.has('bob'));
m.delete('bob');
alert(m.get('alex'));
3.Set(去重,类似python列表的newlst = set(lst))
var s2 = new Set([1, 2, 3]);
undefined
s2;
Set {1, 2, 3}
s2.add(4);
Set {1, 2, 3, 4}
s2.delete(2);
true
s2;
Set {1, 3, 4}
all.js:1 loading comments...
s2.add(4);
Set {1, 3, 4}
六.迭代器(Array、Map和Set都属于iterable类型,用for..of迭代---PS:for..of是对for..in的修复)
1.for..of
var a = ['A','B','C'];
var s = new Set(['A', 'B', 'C']);
var m = new Map([[1,'x'],['name','y'],[3,'z']]); for (var x of a){
alert(x);
}
for (var x of s){
alert(x);
}
for (var x of m){
alert(x[0]+'='+x[1]);
}
2.forEach
//array
var a = ['A', 'B', 'C'];
a.forEach(function (element, index, array) {
// element: 指向当前元素的值
// index: 指向当前索引
// array: 指向Array对象本身
alert(element);
}); //Map
var m = new Map([[1, 'x'], [2, 'y'], [3, 'z']]);
m.forEach(function (value,key,map){
alert(value);
alert(key);
}); //set无索引
var s = new Set(['A', 'B', 'C']);
s.forEach(function (element, set) {
alert(element);
});
Javascript备忘复习笔记1的更多相关文章
- Javascript备忘复习笔记2
一.函数与形参 1.函数 function abs(x) { if (x >= 0) { return x; } else { return -x; } } alert(abs(-10)); 2 ...
- Javascript备忘模式
使用备忘模式,利用了函数的自定义属性,先看一个例子 var test = function (){} test.myAttr = "attr"; 这样,就给test加上了一个自定义 ...
- Javascript备忘
js输出对象类型: Object.prototype.toString.apply(s) 设置单行点击效果: obj.style.background = "#efefef";se ...
- Javascript 备忘
1遍历所有属性 var person={fname:"John",lname:"Doe",age:25}; for (x in person) { txt=tx ...
- javascript 备忘 细节 相关
DOMContentLoaded事件触发时机,即dom tree完成但页面未必渲染完毕. var a = [1,2,3,4]; var length = a.length; alert((leng ...
- JavaScript对象(复习笔记)
js对象 对象构造器 function person(firstname,lastname,age,eyecolor){ this.firstname=firstname; this.lastname ...
- JavaScript基础教程复习笔记
document.write("<h1>这是一个标题</h1>"); 您只能在 HTML 输出中使用 document.write.如果您在文档加载后使用该 ...
- git备忘 & ProGit笔记
git configgit config xxxxx xxxx可以是 --global(使用的是~/.gitconfig) --system(据说在linux下面使用的是/etc/gitcon ...
- [备忘]Asp.net MVC 将服务端Model传递的对象转为客户端javascript对象
<script type="text/javascript"> var jsObject = @Html.Raw(Json.Encode(Model.Objects)) ...
随机推荐
- 为什么relativelayout.layoutParams的width为-1
源码里看下就知道了.. -1不代表宽度,代表MATCH_PARENT常量的值public static final int FILL_PARENT = -1; public static final ...
- 修改mac host
/etc/hosts 把host 复制到桌面 修改 然后 替换原来的
- Android中TextView添加删除线
项目中的需求~~~~ 商城中物品的一个本身价格,还有一个就是优惠价格...需要用到一个删除线. public class TestActivity extends Activity { private ...
- symfony2 controller
1.基本概念 一次http请求 输入(Request):header信息.get信息.post数据等 输出(Response):symfony经过处理返回的信息,包括页面.json字符串.URL ...
- .net C# 图片转Base64 Base64转图片
//图片 转为 base64编码的文本 private void button1_Click(object sender, EventArgs e) { OpenFileDialog dlg = ne ...
- 查看ORACLE的实际执行计划
ORACLE的执行计划分为预估执行计划和实际执行计划.其中,你用Toad.PL/SQL Developer.SQL Developer.EXPLAIN PLAN FOR或者SET ATUOTRACE ...
- Java代码规范
Java代码规范 本Java代码规范以SUN的标准Java代码规范为基础,为适应我们公司的实际需要,可能会做一些修改.本文档中没有说明的地方,请参看SUN Java标准代码规范.如果两边有冲突,以SU ...
- 使用JUnit4测试Spring
测试DAO import static org.junit.Assert.*; import org.junit.Before; import org.junit.Ignore; import org ...
- 禁止用户选定文本: user-select
双击文本 select,会被选定,如下 但有时点击元素时不想要被选定的状态,有一个尚未成为标准的 CSS 属性: user-select,它有 4 个值: text 可以选择文本 element 可以 ...
- 使用.Net自带的GZipStream进行流压缩与解压
using System.IO; using System.IO.Compression; using System.Text; namespace CS.Utility { /// <summ ...