字符串的各类方法
str.charAt(1); 从第0个开始计算获取第一个子符串,如str=‘你好吗’获取到‘好’
str.charCodeAt(1); 获取对应字符串的编码数字;从第0个开始计算
String.fromCharCode(22937, 21619); 返回对应字符串编码的字符串;以下应该记一下(静态方法)
0~9的编码是48~57
a~z的编码是97~122
A~Z的编码是65~90
 
str.indexOf('x', 4); 从零开始寻找x得到9 'x'用来确定所选字符串,作为目标,4是可选值从第四个开始找
str.lastIndexOf('o'); 从后往前开始找
 
'1000' < '2' // true 字符串的比较是比较字符编码大小
'1000' > 2 // true 隐式转换,转化为数字进行比较
 
 
str.substr(2,4) 从下表第三开始往后4个字符
 
str.substring(0, 4); // 截取字符串,从低0的空格到第4个
substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置
以上两个都属于清拷贝,原来的父元素不做修改
 
str.slice(1,5); // 作用效果与substring相同,但可以使用负数。不会自动比较前后大小值
 
str.toUpperCase(); // 转化为大写
str.toLowerCase(); // 转化为小写
 
str.split('.', 2); // 将字符串切割为数组,第一个值写切割的内容(如果选择空,那么将得到长度为一的一整个数组,如果为''那么将会把每个字符切割,第二个值写得到的数组个数,从前往后,后面多余的会被舍弃。
 
replace(被替换的字符,新的替换用字符)
 
var arr = [ 'www', baidu', 'com' ];
arr.join('aaa'); // 'www.baidu.com' 与上面的split相互使用,用来把数组连接为字符串。
 
josn
a={name:'ssasd',neir:555}
使用for (var i in a){
}来进行循环
 
 
数组的添加与删除
会改变数组
 
var arr = [ 1,2,3 ];
 
alert( arr.push( 'abc' ) ); 向最后添加abc字符串,返回值为数组长度
alert(arr.pop()); 删除最后一个字符串,返回值为被删除的字符串
 
alert( arr.unshift( 0 ) ); 向开头添加内容,返回数组长度 // IE 6 7 不支持 unshift 返回值
alert(arr.shift()); 删除第一个字符串,返回值为第一个字符串。
 
arr.splice( 0 , 0, 'aaaaaa')多项功能 第一个为选择位置,第0位,第二个0为删除个数,第三个位添加的内容
返回值为被删除的值
 
数组去重小例子
var arr = [ 1,2,2,4,2 ];
 
for ( var i=0; i<arr.length; i++ ) {
for ( var j=i+1; j<arr.length; j++ ) {
if ( arr[i] == arr[j] ) {
arr.splice( j, 1 );
j--;
}
}
}
 
sort排序方法
arr.sort(); 默认为比较字符编码大小进行排序,能整理字母
会改变原数组,返回本身
 
数字排序需要加函数
arr2.sort(function( a, b ) {
return a - b;
});
 
 
排序带px单位的值
 
arrWidth.sort(function ( a, b ) {
return parseInt(a) - parseInt(b);
});
随机排序 使用random随机数
arr.sort(function ( a, b ) {
return Math.random() - 0.5;
});
 
 
取随机值
var x = 3;
var y = 49;
// alert( Math.round( Math.random()*(y-x) + x ) );
 
// 0~x
// alert( Math.round( Math.random()*x) );
 
// 1~x
alert( Math.ceil( Math.random()*x) );向上取整数
 
 
合并多个不同的数组,使用concat
arr1.concat( arr2, arr3 )
 
 
使字符串倒着输出
arr1.reverse();
 
时间设置
var myTime = new Date();
var iYear = myTime.getFullYear();
var iMonth = myTime.getMonth()+1;
var iDate = myTime.getDate();
var iWeek = myTime.getDay();
var iHours = myTime.getHours();
var iMin = myTime.getMinutes();
var iSec = myTime.getSeconds();
 
 
floor 向下取整
// 天:Math.floor(t/86400)
// 时:Math.floor(t%86400/3600)
// 分:Math.floor(t%86400%3600/60)
// 秒:t%60
 
 
var t = Math.floor((iNew - iNow)/1000);
// 毫秒 - 秒
var str = Math.floor(t/86400)+'天'+Math.floor(t%86400/3600)+'时'+Math.floor(t%86400%3600/60)+'分'+t%60+'秒';
 
各类在if中的真假问题
a是假 var a=0;
b是真 var b='0';
c是假 var c='';
d是假 var d=null;
e是假 var e=undefined;
f是真 var f=[];
g是真 var g={};
h是真 var h=function(){};
 
 
ECMAScript:标准、核心
HTML 标签类型:block、inline、inline-block、table……
JS中的数据类型:数字、字符串、布尔、函数、对象(obj、[]、{}、null)、未定义
 
 
parseInt(num) == parseFloat(num)取整与取余数
 
isNaN(); // true false
// 判断某些值是不是数字
// 不喜欢数字、讨厌数字
 
查找id为id的元素
getElementById('id')
 
找到第x个div
getElementsByTagName('div')[x]
 
改变对象的clsaa
obj.className='class'
 
获取元素最终属性值的方法(以下写法解决了大部分兼容性问题)obj为对象,attr是具体属性例如‘width’
function getStyle ( obj, attr ) { return obj.currentStyle?obj.currentStyle[attr] : getComputedStyle( obj )[attr]; }
 
改变对象多个css属性的写法
oDiv.style.cssText = ' width:200px; height:200px; '
 
各种判断方法
if(){}else if(){}else if(){}else if(){}else{} 如果内容只有一行允许不加花括号,但是降低了可读性。
 
switch(x){ 
如果x等于?
    case 1:  执行语句1;
break;跳出,不再执行下面语句
    case 2:  执行语句2;
break;
default: 执行语句3;
(如果都不符合那么可以写入default,执行语句3,可以不写)
 
三元运算,极度简化的判断
例如:x?a:b 如果x成立,那么执行a,否则执行b b可以用void:0代替(说明为空)
 
使用与&&或||进行简化判断例如
a&&b 如果a成立,那么输出执行或输出b 如果a不成立,直接输出false
a||b 如果a成立,那么输出 true 如果a不成立那么输出b
 
this的认知
this : 这个
this: 指的是调用 当前 方法(函数)的那个对象
 
 
return 返回值
数字、字符串、布尔、函数、对象(元素\[]\{}\null)、未定义
1) 函数名+括号:fn1() ==> return 后面的值;
2) 所有函数默认返回值:未定义;
3) return 后面任何代码都不执行了;
 
当函数的参数个数无法确定的时候:用 arguments
arguments => [ 1,2,3 ] —— 实参的集合
 
 
定时器
var timer = setInterval( 函数, 毫秒 );
clearInterval( timer );
 
setTimeout()
clearTimeout()

JS基础内容小结(基础)(一)的更多相关文章

  1. 3天学习完AngularJS基础内容小结

    简介:AngularJS 是一个 JavaScript 框架.它是一个以 JavaScript 编写的库. 一.AngularJS大致功能模块 二.页面交互变得简单 1.示例:计算价格 <htm ...

  2. JS基础内容小结(event 鼠标键盘事件)(三)

    var ev=ev||event 兼容性处理 得到焦点为 onfocus 失去焦点 onblur return false能阻止部分函数的执行 obj.select 选择指定元素里的文本内容 ———— ...

  3. JS基础内容小结(DOM&&BOM)(二)

    元素.childNodes:只读 属性 子节点列表集合 元素.nodeType:只读 属性 当前元素下的节点类型 元素.attributes : 只读 属性 属性列表集合 元素.children: 只 ...

  4. 1、js基础内容

    js基础内容 1. 编辑器 编译环境 浏览器 编辑软件 sublime DW H5Build Atom ==[注]尽可能多的去使用编辑器去编辑代码.== Html+css ==JS 逻辑== 比作建设 ...

  5. java SE学习过程中的知识点小结(一)(很多内容过于基础,希望能帮助到学习路上的同学)————欢迎老手批评指正

    ①.把boolean测试放在括号内:例如while(x==4){}  //当然看过很多博客,里面有工作经验的工作者说以后公司可能习惯性写(4==x) ②.所有java程序都定义在类中(也是区别于C++ ...

  6. VB6 GDI+ 入门教程[5] 基础绘图小结

    http://vistaswx.com/blog/article/category/tutorial/page/2 VB6 GDI+ 入门教程[5] 基础绘图小结 2009 年 6 月 18 日 4条 ...

  7. node.js(基础四)_express基础

    一.前言                                                           本次内容主要包括: 1.express的基本用法 2.express中的静 ...

  8. 深入理解node.js异步编程:基础篇

    ###[本文是基础内容,大神请绕道,才疏学浅,难免纰漏,请各位轻喷] ##1. 概述 目前开源社区最火热的技术当属Node.js莫属了,作为使用Javascript为主要开发语言的服务器端编程技术和平 ...

  9. (数据科学学习手札41)folium基础内容介绍

    一.简介 folium是js上著名的地理信息可视化库leaflet.js为Python提供的接口,通过它,我们可以通过在Python端编写代码操纵数据,来调用leaflet的相关功能,基于内建的osm ...

随机推荐

  1. Linux 修改root密码(忘记密码后)

    重置密码(一) 背景: 本文基于虚拟机的RHEL6.6版本  RHEL7与此略有不同 重新启动Linux系统 进入如下后界面,再按e键 3. 进入如下界面后,使用键盘上的上下键,选中第二项以kerne ...

  2. 乘风破浪:LeetCode真题_027_Remove Element

    乘风破浪:LeetCode真题_027_Remove Element 一.前言 这次是从数组中找到一个元素,然后移除该元素的所有结果,并且返回长度. 二.Remove Element 2.1 问题 2 ...

  3. 4星|《门口的野蛮人2》:美国宝万之争专业户KKR公司的疯狂借债收购史

    门口的野蛮人2:KKR与资本暴利的崛起(珍藏版) 英文版是1992年出的.主要内容是1977-1998年之间KKR在美国的杠杆收购简史.从KKR创立开始,讲到1990年KKR差点倒闭.国内A股市场上前 ...

  4. libcurl.dll 7.60.0静态库包含openssl/zlib

    最近做个QT的小程序需要使用LIBCURL支持HTTPS,结果查资料发现官方默认的是不支持的,需要手动重新编译,编译的时候加入SSL支持. 看着就好麻烦的样子, 找了一圈,还真有现成的,但是现在写程序 ...

  5. PyQt5 的几个核心模块作用

    QtCore  包含了核心的非GUI功能.此模块用于处理时间.文件和目录.各种数据类型.流.URL.MIME类型.线程或进程. QtGui  包含类窗口系统集成.事件处理.二维图形.基本成像.字体和文 ...

  6. python第三十一课--递归(3.递归的弊端)

    演示递归的弊端: def mySum(num): if num == 1: return 1 return num+mySum(num-1) mySum(998) [注意]:递归可以解决绝大多数循环能 ...

  7. Oracle 12C Data Gurad RAC TO RAC

    Oracle 12C RAC TO RAC Data Guard on RHEL7 0.环境说明   primary db physical standby 操作系统 rhel7 x86_64 rhe ...

  8. Android APP的字体设置

    Android系统自带有对字体的设置,这些设置是对字体的显示方式的设置,比如加粗,倾斜,下划线,字号等,但是对于字体本身,比如设置为楷体,隶书等貌似没有.Android系统只有一种默认的,如果需要修改 ...

  9. oracle数据库flashback系列--闪回数据库在dataguard中的使用

    很多人在学习flashback database这个oracle技术的时候,都会有一个疑问,就是如果我只有一个数据库作为生产库的话,是否有这样的业务需求导致我们要把数据库闪回到以前的时间点?以及这样做 ...

  10. 【转载】python中利用smtplib发送邮件的3中方式 普通/ssl/tls

    #!/usr/bin/python # coding:utf- import smtplib from email.MIMEText import MIMEText from email.Utils ...