贰、js的基础(一)
1、js的语法
a.区分大小写
b.弱类型变量:变量无特定类型
c.每行结尾的分号可有可无
d.括号用于代码块
e.注释的方法与c语言和java相同
2、变量
注意事项:
a.通过关键字var来声明。
b.可以声明多个变量。
c.同一个变量中储存不同的数据类型(最好是同一个变量只存储一种数据类型)
d.变量名称遵循的规则:
(1)首字符必须是字母(大小写均可)、下划线(_)或美元符号($);
(2)余下的字母随意
(3)变量名不能是关键字或者保留字。
3、数据类型
9种数据类型:未定义(Undefined)、空(Null)、布尔型(Boolean)、字符串(String)、数值(Number)、对象(Object)、引用(Reference)、列表(List)和完成(Commpletion)。
a、字符串:string对象用于处理已有的字符串。
规 则:字符包括字母、数字、标点符号和空格。字符串必须放在单引号和双引号里。
注 意:(1)复杂字符串可以用escaping方法来进行转椅;字符串具有leng属性,它返回字符串中字符的个数。
(2)即使字符包含双字节(ASCII字符只占用一个字节),每个字符也只算一个字符。
(3)获取指定字符的属性charAt()方法,第一个字符位置为0,第二个位置为1,以此类推。
b、从某一段字符中取出一段字符串,可采用slice()、substring()、sunstr()方法。
<!--slice()和substring()-->
<script>
var mystring="1234567890abcdefghijk";
document.write(mystring.slice(2,7)+"<br>");
document.write(mystring.substring(12,20)+"<br>");
document.write(mystring.slice(16)+"<br>");
</script>
<!--slice()和substring()的区别-->
<script>
var mybl="manaemjszhuzhu";
document.write(mybl.slice(6,-4)+"<br>");
document.write(mybl.substring(6,-4)+"<br>");
</script>
注意:slice()负参数时,从字符串的末尾往前计数;substring()负参数时,直接忽略负数,作为0来处理,并将较小的作为起始值,较大的作为终止位。
c、搜索操作字符,使用indexOf()和lastIndexOf()两种方法。
<script>
var myjiequ="wodejiequzifuchuangyiyayiayo";
document.write(myjiequ.indexOf("i")+"<br>");//从前往后搜索,第5个是
document.write(myjiequ.indexOf("i",12)+"<br>");//可选参数,从第几个字符开始往后找
document.write(myjiequ.lastIndexOf("i")+"<br>");//从后往前搜索
document.write(myjiequ.lastIndexOf("i",8)+"<br>");//可选参数,从第几个字符开始往前找
document.write(myjiequ.lastIndexOf("z",8)+"<br>");//字符串z,找不到,返回-1
</script>
d、数值(可以是任意的数字,包括小数和负数)
<!--数值的科学计数法toExponential()-->
<script language="javascript">
var mynumber=8907;//注意数据类型,数值的写法,数字不能用引号引起来。
alert(mynumber.toExponential(2));
</script>
e、布尔型(只有2个只:false和true;布尔型不能用引号引起来)
<!--布尔型变量的正确写法-->
<script>
var married=true;
alert("1."+typeof(married));
married="true";
alert("2."+typeof(married));//typeof()查看数据的类型
</script>
f、类型转换(转换函数、强制类型转换、利用js变量弱类型转换)
详情见——贰、js的基础(二)
g、数组:有名称相同的多个值构成一个集合。
(1)使用关键字array来声明;可以指定这个数组元素的个数(也就是长度);数据元素可以是字符串、数值和布尔值。
(2)数组的声明方法:
arrayObj = new Array(); //创建一个数组。
arrayObj = new Array([size]) 创建一个数组并指定长度,注意不是上限,是长度。
arrayObj = new Array([element0[, element1[, ...[, elementN]]]]) 创建一个数组并赋值。
代码如下:var a = new Array(["b", 2, "a", 4,]);
arrayObj = [element0, element1, ..., elementN] 创建一个数组并赋值的简写,注意这里中括号不表示可省略。
代码如下:var a = ["b", 2, "a", 4,];
(注):注意带“[]”与不带“[]”的区别
代码如下:
var a = new Array(5); //指创建长度为5的数组
| break | do | instanceof | typeof |
| case | else | new | var |
| catch | finally | return | void |
| continue | for | switch | while |
| debugger* | function | this | with |
| default | if | throw | delete |
| in | try |
| abstract | enum | int | short |
| boolean | export | interface | static |
| byte | extends | long | super |
| char | final | native | synchronized |
| class | float | package | throws |
| const | goto | private | transient |
| debugger | implements | protected | volatile |
| double | import | public |
第5 版把在非严格模式下运行时的保留字缩减为下列这些:
| class | enum | extends | super |
| const | export | import |
在严格模式下,第5 版还对以下保留字施加了限制:
| implements | package | public | interface |
| private | static | let | protected |
| yield |
贰、js的基础(一)的更多相关文章
- node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法
1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...
- Node.js系列基础学习----安装,实现Hello World, REPL
Node.js基础学习 简介 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一 ...
- css+js+html基础知识总结
css+js+html基础知识总结 一.CSS相关 1.css的盒子模型:IE盒子模型.标准W3C盒子模型: 2.CSS优先级机制: 选择器的优先权:!important>style(内联样式) ...
- JavaScript基础精华02(函数声明,arguments对象,匿名函数,JS面向对象基础)
函数声明 JavaScript中声明函数的方式:(无需声明返回值类型) function add(i1, i2) { return i1 + i2;//如果不写return返回 ...
- JavaScript--我发现,原来你是这样的JS(基础概念--灵魂篇,一起来学js吧)
介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第三篇(灵魂篇介绍),有着剩下的第三章的知识内容,当然其中还有我个人的理解.红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂 ...
- js复习--基础
最近工作遇到了一些小困难,基础真的很重要,漫天高楼起于地. 一,script元素 包括type=“text/Javascript”,defer延迟到html加载完解析,src=“../../test. ...
- 第八节 JS运动基础
运动基础 让Div运动起来 速度——物体运动的快慢 运动中的Bug 不会停止 速度取某些值会无法停止 到达位置后再点击还会运动 重复点击速度加快 匀速运动(速度不变) 运动框架及应用: 运动框架: 在 ...
- JS零基础一步一步做应用全记录
1.起因 作为几个外卖重度依赖癌晚期患者,呆宿舍的时候几个人一起叫外卖已经是常事.偶然看到隔壁宿舍在饿了么订餐的时候,看到在饿了么的首页上有一个谁去拿外卖的一个小游戏/工具,感觉这个小细节,饿了么把握 ...
- 认识JS的基础对象,定义对象的方法
JS的基础对象: 1.window //窗口对象 2.document //文档对象 3.document.documentElement //html对象 4.docume ...
随机推荐
- OracleRef游标
提到个思考:怎样让游标作为参数传递? 解决这个问题就需要用到 REF Cursor . 1,什么是 REF游标? 动态关联结果集的临时对象.即在运行的时候动态决定执行查询. 2,REF 游标有什 ...
- ASP内建对象
Active Server Pages 提供内建对象,这些对象使用户更容易收集通过浏览器请求发送的信息.响应浏览器以及存储用户信息(如用户首选项).本文简要说明每一个对象.有关每个对象的详细信息,请参 ...
- Maven编译、打war包
Eclipse环境,每次alt+F5刷新Maven项目时,总是会把项目的Java依赖刷新成1.5. 解决办法:在pom中加入如下片段 <plugin> <groupId>org ...
- Code Snippet 插件 使用——代码高亮
Code Snippet 下载地址 下载后安装,重启windows live writer 插入-->CodeSnippet 将代码粘贴进去,如图: 代码效果: @Controllerpubli ...
- Mac Dropbox 文件不显示同步图标 解决
前言 开始时关了这个功能,今天想打开发现怎么也恢复不了. 按照官方教程说的重装也无济于事.最后在官方BBS发现一篇帖子顺利解决了问题 解决方案 这哥们意思是说禁用了一个Finder的插件就好了(有意思 ...
- day16 闭包以及装饰器(好东西)
目录 闭包 装饰器 最基础的装饰器 完善装饰器 有返回值的 有参数的 装饰器模版 语法糖 登录装饰器 可变类型的局部变量可以修改全局变量 三层装饰器 闭包 首先要理解函数对象的概念,其实函数名就相当于 ...
- Redis数据库入门基础,及优缺点介绍
简介 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. Redis 是一个高性能的key-value数据库.R ...
- 存储过程(带有逻辑的sql语句)
-- 创建存储过程 DELIMITER $ -- 声明存储过程的结束符 CREATE PROCEDURE pro_test() --存储过程名称(参数列表) BEGIN ...
- 粘包解决高端_Client
from socket import * #导入套接字模块的所有命令import struct #导入struck模块,用于封装数据流长度# from functools import partial ...
- P3387 【模板】缩点 && P3388 【模板】割点(割顶)
Tarjan算法 应用: 有向图的强连通分量 无向图割点和桥 双连通分量 接下来主要谈论前面两者的应用(主要是第三种还没学会) 算法简要介绍 我们需要先理解一下知识:搜索树 有向图的搜索树的4种边,如 ...