- 相关推荐
个人心得javascript总结
当我们有一些感想时,可以将其记录在心得体会中,这样就可以总结出具体的经验和想法。那么写心得体会要注意的内容有什么呢?下面是小编整理的个人心得javascript总结,欢迎大家分享。
个人心得javascript总结1
1、javascript 是一种基于对象,和事件驱动的 并具有安全性的脚本语言;基于对象,动态语言,无需编译,直接解释执行;
2、可以放在的地方;
A、中,一对
之间;
B、单独文件中
C、将脚本程序代码作为属性值、javascript
3、保留字以及关键字;
4、javascript基本语法:
4.1 标识:大小写字母,数字,下划线,和美元符号:不能以数字开头;
4.2 javascript严格区分大小写
4.3 每条语句必须以 分号结束;(不写,一般没事,但是可能会引起不必要的歧义)
4.4 多行注释 /* */ 单行注释:
//
4.5
Function test(){
Var i=100; //不加var 就会自动变成全局变量,这样在以后会产生冲突; Alert(i);
}
Test();
5、数据类型:(数字,boolean,String字符串;日期什么的 是对象了)
特殊值:NaN,Infinity,函数isNaN();isFinite();
Boolean,取值只能是 true,和false 全是小写
逻辑运算符
var a=100;
var b=0;
var c=a||b;
alert(c);//返回值是100:就是当两边返回值都是false时,返回第一个或最后一个不为false的'值;
6、什么值在javascript中是false?
逻辑运算中,0,“”,false,null,undefined,NaN均表示false
6.1想要赋个默认值:怎么办?
function test(e){
e=e||new object();
if(e.name!=ang){
alert(e);}}
test(3);
看这里:
Var sth=test;//相当于将函数赋给一个变量,这个变量之后可以传参运行了; Alert(sth(100));
7、javascript中的系统函数:
7.1 编码解码:alert(encodeURI(sht中午啊));处理中文情况; decodeURI,对编码的进行解码;
7.2、数值转换;
parseInt(‘’);//将其他类型转换成数字;原理:从第一个字符开始,如果第一个可以转换就继续向下走,直到不能转,省略后面,如何第一个都不行,就直接返回NaN格式;
var a=parseInt(‘555abc’);//返回555;
var b=parseInt(‘cc’);//返回NaN;
7.3 eval;将其中的参数字符串当做一个javascript表达式执行; var a="alert(fu ck you);";
eval(a);
var b=eval("{a:thank,b:30}");
alert(b.b);//为啥没有反应啊!
二、javascript的类
1、 javascript的内部类;
所有类的基类都是 object;
可以动态的给类添加方法和属性;//java无法做到的,记住啊!
var obj=new Object();
obj.sayhello=function(){
alert(this.msg);}
obj.msg=haha i can have my class;
obj.sayhello();
Var n1=new Number(1100);
Alert(n1.toString(2));//返回n1的二进制表示形式;
var s=ang;
s=s.link();
alert(s);//ang弹出这个形式;
var sss.
Alert(typeof sss);//查看数据的类型;
Alert(sss.constructor);//查看数 据的构造函数
个人心得javascript总结2
javascript学习总结1.JavaScript中的对象
分为3种。
(1)JavaScript的内置对象
常用的有Date,Array,String,Math,对象,这些都是经常会用到的,一定要掌握好。
(2)文档对象模型(Document Object Model,DOM)
这个对象表示了当前浏览器的多个组件和当前的HTML文档。DOM我认为是JS中最重要的一个对象,通过他可以获得任何一个HTML元素,1.通过document.form1.name得到,这种是浏览器支持的dom对象,不属于js,2.咱们经常用的是document.getElementById("name"),这种是w3c组织制定的一级DOM对象标准。
(3)自定义对象
我总认为js的自定义对象没必要用,如果你是按照面向对象的编程思想,那么应该用Java,而不是用js的对象。
2.DOM对象,history以及location
为了操控浏览器和文档,js使用分层的父对象和子对象,这就是DOM。这些对象的组织类似一个树形结构,并表示一个Web文档的所有内容组件。
Window是所有对象的父对象
document对象几种常用方法
document.URL:指明了文档的URL地址。不可改变,如果需要给用户不同的地址应该用window.location对象
document.write:列出了当前页面的标题
document.referrer:用户所浏览的上一个页面的URL地址。
document.lastModified:文档最后修改日期
document.cookie 允许读取和设置一个文档的cookie
history对象的几种常用方法
history.length();保存了历史列表的长度
history.go();打开历史列表中一个网址,要指定一个正数或者负数。
history.back();历史列表中的前一个网址,相当于后退按钮。
historay.forward();历史列表中的后一个网址,相当于后退按钮。
location对象的几种常用方法
location.protocol:网址的协议部分---http
location.hostname:网址的主机名---
location.port:网址的端口号---80
location.pathname:网址的文件名部分---tese.do
location.search:网址的查询部分---lines=1
location.hash:网址中使用的anchor名---#anchor
location对象的两个方法
location.reload() 刷新当前文档,浏览器中的刷新按钮。
location.replace()替换一个新的位置
3.JavaScript中的变量名称,表达式,运算符,数据类型
变量名称,表达式,运算符,和Java中差别不大,就不多加叙述了
数据类型
1.数字:整数,浮点数
2.布尔值:真,假。
3.字符型:字符串对象
4.空值,null。
parseInt()----将一个字符串转换为整数值。
parseFloat----将一个字符串转换为浮点小数
字符串中有一些常用的方法,如subString,charAt等,与Java中的很像,就不叙述了
4.JavaScript中的函数
函数定义的最佳位置是文档中的部分,因为部分语句会首先执行。 函数中可以带有参数列表,但是参数都没有类型,也不需要在定义函数的时候声明返回值,想有返回值的话,直接return即可,和Java不同。
如:
Js代码
1. function g
reet(who){
2. alert(“Gadsden” + who);
3. return “asdasd”;
4. }
5.JavaScript中的对象
他和Java中的对象很相似,之前我曾说不需要用到他,用Java的就够了,昨天看了一个人的文章,说你要想用好一门语言,就要尊重这门语言,就像现在的JavaScript,如果简单的把他当做一门脚本语言,那可能只能停留在入门和初级阶段。
如何扩展内置对象
使用prototype关键字,可以向现有对象中添加属性和方法。
例如:
Js代码
1.
2. function addHead(level){
3. html = "H" + level;
4.text = this.toString();
5. start = "<" + html +">";
6.end = "";
7.return start + text + end;
8. }
9. String.prototype.heading = addHead;
10. document.write("this is a test".heading(1));
11. document.write("this is a test".heading(2));
12. document.write("this is a test".heading(3));
13.
这样就为String对象又新增添了一个方法,heading,并指明每次调用heading的时候,他都会去调用addHead方法。
6.JavaScript中的`Data Math等内置对象
他们与Java中的又是很相似,不多介绍了,有一个关键字需要说说,就是with。
with关键字制定一个对象,后面跟着括在大括号中的一大块语句。对于块语句中的每一条语句,没有指定对象的属性都将被假定为该对象的属性。
如:
Js代码
1.
2. a = "niechao";
3.with(a){
4. window.alert("长度是"+ length)
5. document.write(toUpperCase());
6. }
7.
注:这里不用在定义a的时候带有类型信息,如String a = “niechao”;这样会报错,如果非要加上,也只能是var a = “niechao”;
7.JavaScript中使用第三方程序库
每个程序库都有自己的名字,一般的名字是xxx.js,包含到你要用的jsp页面里就行了。 <
Js代码
1. script type="text/javascript" language="JavaScript" src="prototype.js">现在流行的有几种,比如:ext,jquery,dojo等,老一辈的也有prototype这些。选一种合适自己的就行了,自己用着顺手的,可以满足项目需要的,我暂时选的而是jquery。
8.JavaScript中 的事件相应
不必使用标签来定义事件处理函数
可以不在HTML中指定时间处理函数,而是使用JavaScript把一个函数指定为事件处理函
数
1.首先找到元素的对象,使用obj = document.getElementById("aa")
2.定义一个函数,把该函数指定为事件处理函数,
Js代码
1. function mousealert(){
2. alert("");
3.}
4. bj.onclick = mousealert;
JavaScript中由属性,方法,事件组成对象,许多常用的事件处理函数都是document对象中的属性。
9.JavaScript中使用event对象
要是用event对象,可以把他传递给事件处理程序函数。
Js代码
1.
2.function getKey(e){
火狐和IE,对event的处理方式不同,火狐是直接自动传递的,IE是将最近发生的事件存放在window.event对象中。
所以很多函数的开头,一般都是
Js代码
1. function getKey(e){
2.if(!e) e=window.event;
3.}
它检查了是否已经定义了e,若未定义,它将获取window.event对象,并将其存入e,这样确保任何一个浏览器中都会得到一个有效的event对象。
以下是IE4.0及更高版本的一些常用event对象属性
1.event.button:按下的鼠标键。对于鼠标左键,属性值为1,对于鼠标右键,属性值为2
个人心得javascript总结3
一:javascript的组成
Javascript是一门轻量级的脚本编程语言
由ECMAScript DOMBOM 这三部分组成
1、 ECMAScript(4 5):定义了JS里面的命名规范,变量,
数据类型,基本语法,和操作语句最核心的东西等
2、 DOM document object model 文档对象模型
3、 BOM browser object model 浏览器对象模型
第一块: ECMAScript
1、命名规范避开关键字保留字(1、在JS当中严格区分大小 2、驼峰命名法首字母小写,其他有意义的单词首字母大写 3、可以使用数字字母下划线和$符号----数字不能作为首位)
------------------关键字:在JS当中有特殊意义的字
保留字:未来可能成为关键字的
2、变量:可变的量
JS当中的变量是个抽象的概念,用来存储值和代表值的! 在JS当中定义一个变量非常简单 var变量名=变量值;
=是赋值操作,左边是变量名右边是存储的值
JS当中的变量是松散类型的,通过一个var 变量名就可以存储任何的数据类型!
3、数据类型
Js当中的数据类型的分类
1基本数据类型:由简单的结构组成
数字number字符串 string布尔booleannull undefined2 引用数据类型 :结构相对复杂一些的
对象数据类型:object (数组和正则都是对象数据类型)
函数数据类型:function
具体的数据类型详解
1,number 数据类型:整数负数 0小数 NaN (不是一个有效数但是他属于number类型的)
NaN==NaN是不相等的
isNaN检测是不是一个有效的数,是一个有效的`数返回false 不是一个有效的数是true ,如果检测的值不是number类型的浏览器会默认的转换成number类型的然后在判断是否是有效数组isNaN(”123”)先经过Number(“123”) 转化成123,Number 强制将其他的数据类型转化成number 要求如果是字符串的话一定是数字才可以转化; 案例:Number(“12px”)=NaN
非强制数据类型转化:parseInt parseFloat
parseInt:从左到右一个个查找,把是数字的转化为有效的数字,中途如果遇到一个非有效的数字就不再查找了!
Console.log(parseInt(“12px”));===>12
parseFloat:和上面的一样只是可以多识别一个.点
console.log(parseInt(“12.333px”));-------------------12
console.log(parseFloat(“12.2333px”));--------------12.2333
案例:var =Number(“12px”);
if(var ==12){
console.log(12);
}else if(var ==NaN){
Console.log(“我是NaN”);
}else{
Console.log(以上俩个条件都不成立);
} 重点2.boolean!一个叹号是取反,先将值转化为布尔类型值,然后再取反
数据类型转化的规则:
判断一个值是真是假,只有 null 0 NaN “” undefined 为假其余的值都为真,[] {} 空数组和空对象都为真
如果俩个值比较,遵循这个规律:
//val1==val2 俩个值不是同一种数据类型的:如果是==进行比较的话会进行默认的数据类型转化:
1.对象和对象比较永远不相等 []==[]----false {}=={}---false function fn(){}=function fn(){}-------false 2 对象和字符串先将对象转化为字符串然后在进行比较
[+==”” *+.toString()-----------经过toString方法把对象转化为字符串
[]数组转化为字符串为空字符串 true
{}转化为字符串为“* object Object+” 所以,-==“” ------------false
3,对象==布尔类型对象先转化为字符串(toString())然后在转化为数字(Number())布尔类型也转化为数字(true 为1,false为0)
4,对象和数字 : 对象先转化为字符串(toString())然后在转化为数字(Number())[]==1false
5数字和布尔布尔转化为数字
6,字符串和数字字符串转化为数字
7字符串和布尔都转化为数字
8.null ==undefined true
9.null 和undefined 和其他数据类型比较都是false
3 ===这也是比较如果数据类型不一样绝对不相当
Null===undefinedfalse数据类型不同false
对象数据类型:
由多组属性名和属性值组成;属性名和属性值是用来描述这个对象特征的!
Var obj=,name:”hewenbang”,age:13-;------字面量创建方式
Var obj =new Object();实例的创建的方式,
给一个对象增加一组属性名和属性值
Obj.name=”hewenbang”,
Obj*“name”+=”hewenbang”;
修改原有的属性名和属性值,规定一个对象当中的属性名不能重复,如果有的话就是修改,没有的话就是新增
Obj[“name”]=”zhufengpeixun”;
获取属性值:
Console.log(Obj*“name”+);
如果属性名不存在默认返回的结果是undefined
删除属性名字和属性值:
假删除:obj[“name”]=null;
真删除: obj*“name”+;
对象数据类中还可以具体的细分:对象类(Object)数组类(Array) 正则类(RegExp)时间类(Date)数学函数(Math)字符串类(String)布尔类(boolean)
Var obj={};
Var array=[];
Var reg=/^ww$/;
Js中对象,类和实例的区别:对象是个泛指,JS中万物皆对象,类是对对象的具体的细分,实例是类中一个具体的事物!
自然界中万物皆对象,可以分为人类植物类低等动物类物体类每一个人都是人类中的一个实例
Function 数据类型
Function:函数数据类型相当于一个方法或者功能。
个人心得javascript总结4
js中使用一个变量之前应当先声明。变量使用关键字var来声明。
如果未在var声明语句中给变量指定初始值,则该变量值为undefined。
不用在声明变量时指定变量类型,js变量可以是任意数据类型。
使用var语句重复声明变量是合法且无害的。如果重复声明带有初始化器,则就和简单的赋值语句没啥区别。
如果试图读取一个没有声明的变量,则js会报错。在ECMAScript5严格模式下,给一个没有声明的变量赋值也会报错;然而从历史上来说,在非严格模式下,如果给一个未声明变量赋值,js实际上会给全局对象创建一个同名属性,且貌似它工作起来像一个正确声明的全局变量。这意味着你可以侥幸不声明全局变量,但这是一个坏习惯会造成很多bug,最好始终使用var来声明变量。
在函数体内,同名的局部变量会覆盖全局变量。
尽管全局作用域写代码可以不写var语句,但声明局部变量时必须使用var语句,参考如下代码:
scope = "global";function foo(){ scope="local" //fk!我们刚刚修改了全局变量!}
在类似C语言的编程语言中,花括号中每一段代码都有各自的作用域,且变量在声明它们代码段之外是不可见的,我们称之为块级作用域(block scope);而js中没有块级作用域,而是取而代之的使用了函数作用域(function scope):变量在声明它们的函数体以及这个函数体嵌套的任意函数体内都是有定义的(无论是内嵌套还是外嵌套?)
js的函数作用域指在函数内声明的所有变量在函数体内始终是可见的,这意味着变量在声明前甚至可以使用了。js的这个特性非正式的`称为声明提前(hoisting),即js函数里声明的所有变量(但没有赋值)都被“提前”至函数体的顶部。
var scope = "global";function f(){(scope);//输出"undefined"而不是"global" var scope = "local";//变量在这里赋初始值,但变量在函数体内任何地方均是有定义的(scope);//输出"local"
以上代码等价于:
function f(){ var scope;(scope);scope = "local";(scope);}
当声明一个js全局变量时,实际上定义了全局对象的一个属性。
当用var声明一个变量时,创建的这个属性时不可配置的,即无法用运算符删除;但当你没有使用严格模式并给一个未声明的变量赋值的话,js会自动创建一个全局变量,以这种方式创建的变量是全局对象的正常可配置属性,是可以删除的:
var x = 1;y = 2;this。z = 3;//同上x;//返回false,无法删除变量y;//返回true,变量被删除this.z //同上。
【个人心得javascript总结】相关文章:
军训个人总结及心得09-27
个人工作心得总结06-22
军训心得个人总结范文08-25
医院实习个人总结与心得03-08
军训个人总结及心得最新03-02
销售个人总结心得通用03-03
军训个人心得总结08-29
2022单位个人优秀总结心得10-21
年末采购个人总结心得参考11-03