小红书学习——JS(不定时更新)
来源:互联网 发布:行车记录仪支架淘宝 编辑:程序博客网 时间:2024/05/17 15:18
JS
如果您把值赋给尚未声明的变量,该变量将被自动作为全局变量声明。
这条语句:
function func(){ carname="Volvo";}
将声明一个全局变量 carname,即使它在函数内执行。
DOM事件
拖动事件:
3. 字符串
- 不要创建String 对象,会拖慢执行速度
var x = new String('dasda')
属性:prototype(允许向对象添加属性和方法)、length(返回字符串长度)、constructor(返回创建字符串属性的函数)
- 正则表达式
方法:
- search()搜索匹配子串并返回起始位置
- replace()替换匹配子串
- match()检查是否符合正则表达式
- /正则表达式/.exec(str),返回匹配结果的数组
表达式: / 正则表达式主体 / 修饰符(可选)
修饰符:i(对大小写不敏感)、g(查看所有匹配,而非找到第一个匹配后停止)、m(执行多行匹配)
表达式模式
- 查找某范围内的字符:
- [abs]:查找方括号内的任何字符
- [0-9]:查找任何0~9的数字
- (x|y):查找匹配任何以|分隔的选项的内容
- 元字符
- \d:查找数字
- \s:查找空白字符
- \b:匹配单词边界
- \uxxx:查找十六进制数字xxx规定的Unicode字符
- 量词
- n+:匹配任何包含至少一个n的字符串
- n*:匹配包含0个或多个n的字符串
- n?:匹配任何包含0个或1个n的字符串
- 查找某范围内的字符:
变量提升
- 函数和变量的声明都会提升到函数的最顶部
- 变量可以先使用,再声明
- 变量的初始化不能被提升
var x = 5
JS的严格模式
在头部加上“use strict”,是ES5的内容
- 不允许使用未声明的变量
- 不允许删除对象/变量
var x = 3; "use strict";delete x;
- 不允许删除函数
- 不允许变量重名
- 不允许用转义符
\
- 不允许
this
指向全局对象
JS误区
数组不能用名字作为索引
javascript
var arr = [];
arr["aaa"] = "AAA";
arr["bbb"] = "BBB";
alert(arr.length); // 输出0
alert(arr[0]); // 输出undefined上面的数组被重定义为对象,只能用对象的方法来访问
javascript
for (var i in arr){
alert(i); // 输出每个arr的属性名
alert(arr[i]); // 输出每个arr的属性值
}
JS表单
获取表单某字段的值:
document.forms["myForms"]["inputName"].value
JSON
JS对象
javascript
var person = {
firstName:"John",
lastName:"Doe",
age:50,
eyeColor:"blue"
};JSON数组:下面包括了三个对象
javascript
var text = {"person:[
{"firstName":"John","lastName":"Doe"}, {"firstName":"John1","lastName":"Doe1"},
{"firstName":"John2","lastName":"Doe2"}
]};JSON字符串(这里将JSON数组用’ ’括起来,变成字符串)转对象
javascript
var text = '{ "sites" : [' +
'{ "name":"Runoob" , "url":"www.runoob.com" },' +
'{ "name":"Google" , "url":"www.google.com" },' +
'{ "name":"Taobao" , "url":"www.taobao.com" } ]}';
// 转对象
var obj = JSON.parse(text);
// 用对象的方法把JSON中的值取出来
alert(obj.sites[0].name);
javascript:void(0)可以定义死链接,放在a的href中
JS函数
自调用函数:
javascript
(function(){
...
})();Arguments对象
JS函数都有内置的函数对象Arguments,可以获取传入函数的参数数组
“`javascript
x = findMax(1, 123, 500, 115, 44, 88);function findMax() {
alert(arguments[0]);// 输出1
return arguments[2];// 返回500
}
“`函数调用
- this关键字:指向函数执行的当前对象
- 可以通过call或者apply来设置this的值
闭包:解决“若用全局变量,则所有脚本不通过调用函数,都可以改变该变量,不好”
是的函数拥有私有变量便变成可能
javascript
var name = "The Window";
var forEach = function(){
name:"The Obj",
getName:function(){
return function(){
return this.name;
};
}
}JS HTML DOM
如需改变 HTML 元素的属性,请使用这个语法:
document.getElementById(id).attribute=新属性值
如需改变 HTML 元素的样式,请使用这个语法:
document.getElementById(id).style.property=新样式
- 小红书学习——JS(不定时更新)
- Hibernate 的学习笔记(温故而知新)— — 不定时更新
- js 拾贝集锦 (不定时更新)
- postgresql——常用操作指令(不定时更新)
- Head First 设计模式学习笔记(不定时更新)
- 学习代码及算法(未完待续,不定时更新)
- 猜猜看软件-学习总结(不定时更新)
- 手机网页开发学习(不定时更新)
- 前端学习网站资源(不定时更新)
- shell脚本的学习记录(不定时更新)
- git的学习记录(不定时更新)
- 笔记(不定时更新)
- 资料(不定时更新)
- oc学习笔记(不定时更新)
- Latex学习相关【不定时更新】
- HTML学习笔记(不定时更新)
- Java学习笔记-不定时更新
- 不定时更新-android学习之路
- 比特币脚本及其改进一例
- 二叉树最近公共父节点(记录根到某一节点路径)
- Elasticsearch 插件head 端增加一条记录和增加一个字段
- == 和equals 区别
- ubuntu 查看可用的shell和当前使用的shell
- 小红书学习——JS(不定时更新)
- SQL总结(六)触发器
- 实战
- d3画散点图
- Java 基础——构造器和方法的区别
- 私有API-iOS10方法跳转到设置界面失效的解决方法
- web之sql约束攻击
- The Flash-14
- Enter键调用登陆按钮效果(keyCode、onkeydown)