1.js基础

建议:一般情况下不在head标签中写js语句,因为该js语句会在body加载之前就执行,可能导致某些效果无效

// 单行注释
/*多行
* 注释*/
// 控制台输出语句
console.log('hello world');// 浏览器的提示框
alert('这是一个提示框');//页面展示
document.write('hello world');
document.write('<h1>alert</h1>');

2.数据类型

一、基本数据类型

  • Number:数字类型 整型 浮点型 NaN(不是一个数字) Infinity(不能处理的数字)
  • String字符串,使用单引号或双引号的任意多个字符
  • boolean:true false
  • undefined:未定义类型 当定义变量时未赋值,默认为undefined类型,值为undefined
  • null:空类型,代表空值或没有值,空类型的值为null

null与undefined区别,当变量定义了但未赋值,默认值为undefined,当变量定义了并且赋予值为null时 ,为空类型

二、引用数据类型

  • String:字符串
  • Array:数组

3.Number类型

var num;
console.log(num); //undefined
console.log(typeof num); //undefinedvar num = 20;
console.log(typeof num);  // number
console.log(num);// 变量的数据类型根据赋值的类型而定// 定义一个八进制数
// js八进制数以0开头
var num3 = 056;  // 以十进制格式输出
console.log(num3);  // 46// 定义十六进制
var num4 = 0x56
console.log(num4) // 86// js中最大的数为1e308
console.log(1e308); //1e+308// Infinity 特殊的number类型 特殊的值 当处理超出js的数值范围时
console.log(1e309); // infinity
console.log(typeof Infinity) // number类型console.log(10/0)
// Infinity与其他任何数字进行数学计算 ,值依旧是Infinityconsole.log(Infinity+(-Infinity));  // NaN// NaN 表示不是一个数字,但是NaN是Number类型,只不过Number中
// 一个特殊的值
console.log(typeof NaN) //Number类型//当运算符使用错误时,运算失败返回NaN
console.log('f' * 3); // NaN// NaN与任何数字进行运算都是NaN
console.log(1 + 2 + NaN)
console.log(Infinity + NaN); // NaN

4.Boolean类型

  • 数字 :0 0.0 NaN
  • 字符串: 空字符串
  • 空值类型:null
  • 未定义类型:undefined

以上为false, 除以上情况都为真

5.命名空间

在同一个html文件中,所有的script共用同一个命名空间

    <script type="text/javascript">var a = 200;console.log(a); </script><script type="text/javascript">console.log(a)  // 200</script>

6.字符串相关操作

// 一、字符串的拼接
//字符串拼接 +
console.log('hello '+ 'world');// 字符串+数字  变成字符串
console.log('1'+2);   // '12'// 当运算符前后都是数字类型时 进行数学运算
console.log(1+2+'3');  // '33'
console.log('1'+2+3); // '123'
console.log(typeof 1+2+'3'); // number23
console.log(typeof (1+2+'3')); //string// 二、定义引用类型的字符串!!!
// new String()
// new:开辟空间 返回一个对象
// new: 创建一个类的实例对象的关键字, String():字符串的一个类
var str3 = new String('我是好人')
console.log(str3)
console.log(typeof str3);  // object// string 基本数据类型
// object 引用数据类型
// 二者本质上的数据类型是不一样的
// 在实际操作中, 基本数据类型会自动转为引用数据类型,我们可以
// 用基本数据类型调用引用数据类型的方法或属性// 三、字符串是不可变的数据类型// 四、字符串的相关方法
//1-字符串长度
var str5 = 'abcd';
var str6 = new String('qwert');
console.log(str5.length)
console.log(str6.length)//2-大小写转行
var str7 = 'ABCdef';
console.log(str7.toLowerCase());
console.log(str7.toUpperCase());//3-字符串比较 比较acsii的值
var str8 = 'abc';
var str9 = 'auc';
var res = str8.localeCompare(str9); // -1 代表小于
console.log(res)//4-ascii值转为字符
var str10 = String.fromCharCode(97);
console.log(str10);  // a
console.log(typeof str10);  // string // 5-获取字符串中某个下标的字符  console.log(str8.charAt(2)); // cconsole.log(str8[2]);console.log(str8.charAt(4)); // '' 下标越界不会报错 是空// 6-字符串转ASCII charCodeAt(下标)console.log(str8.charCodeAt(2));  //99// 7-判断是否相等
// == :js中会自动进行数据转行再进行比较
// !=
// ===: 值与数据类型是否一致
// !==
var num1 = 10;
var num2 = '10';
console.log(num1 == num2)   // 10==10  10=='10'
console.log(num1 === num2)  // false// 8-字符串替换
// replace(旧字符串/正则表达式, 字符串)
// replace:目前只替换一次,如果想要全部替换需要正则
var str11 = 'today   is cool and cood so cool';
console.log(str11.replace('cool', 'hot')); //换一次
console.log(str11.replace(/cool/g, 'hot'));  // global 全局查找// 9-切割字符串
// 如果不需要空字符串 也是需要正则的
console.log(str11.split(' '));
console.log(str11.split(/ +/))// 10-将数组中元素拼接为字符 和Python相反
arr1 = [1,2,3,4]
console.log(arr1.join('*'));// 11-字符串截取
var str12 = 'abcdefghidefgk'
console.log(str12.substring(2)); //从第三个下标开始截取 cdefghigk
console.log(str12.substring(1,5)); // 5不包括
// substr 第二个参数是截取的个数
console.log(str12.substr(2));
console.log(str12.substr(1,5));//12-字符串查找
// indexOf:当能够找到:返回第一次找到的下标
// 找不到 返回-1
console.log(str12.indexOf('def'));
console.log(str12.indexOf('rrr'));
// 从右向左找
console.log(str12.lastIndexOf('def'));

7.关系运算符与逻辑运算符


console.log(1>'2'); // false
console.log(1=='1'); // true
console.log(1==='1')  // falseconsole.log(5 / 2) // 2.5 Number// true-> 1 false -> 0
console.log(1+true);  //2
console.log(1+ false); //1// null->0
console.log(1+ null);  // 1// undefined->NaN
console.log(1+undefined)// NaN&& || ! ++ --

8.提示框类型


// alert
// confirm 有确定及取消两个按钮
// confirm 有返回值 点确定按钮时候返回true
var res = confirm('在么');
if(res == true){console.log('66');
}else{console.log('滚');
}//prompt 有返回值
//点击确定按钮时候,返回输入框的文字
// 点击取消 返回 null
res= prompt('请输入');
document.write(res);

Javascript ECMA-2(类型转换,条件语句,循环,函数)

Javascript ECMA-1(数据类型,字符串操作)相关推荐

  1. JavaScript中常见的字符串操作函数及用法汇总

    转载地址:http://www.jb51.net/article/65358.htm 这篇文章主要介绍了JavaScript中常见的字符串操作函数及用法,实例汇总了javascript常见的字符串转换 ...

  2. 010-python基础-数据类型-字符串操作

    1.移除空白 1 username.strip() 2.分割 1 names = "alex,jack,rain" 2 names_1 = names.split(",& ...

  3. java——基础数据类型——字符串操作

    ======================================================================== 获取字符串长度 String st = "b ...

  4. JavaScript中的字符串操作(转)

    http://www.cnblogs.com/xuebin/articles/1296837.html 最近编一个javascript的翻译程序,发现无法正确比较两个字符串的相等,上网查了查,发现这篇 ...

  5. js 包含某个字符串_[译] 5 大 JavaScript 字符串操作库

    原文地址:5 String Manipulation Libraries for JavaScript 原文作者:Mahdhi Rezvi 译文出自:掘金翻译计划 本文永久链接:https://git ...

  6. [记录] JavaScript 中的字符串操作

    字符串原型: 通过修改字符串的原型,可以为所有字符串添加公共方法 String.prototype.startwith = function(text) {return this.indexOf(te ...

  7. js反序列化html编码,JavaScript实现的反序列化json字符串操作示例

    本文实例讲述了JavaScript实现的反序列化json字符串操作.分享给大家供大家参考,具体如下: JavaScript中如何反序列化json字符串呢? 有如下两种方法: (1) 使用万能的eval ...

  8. javascript 字符串操作函数大全

    javascript字符串操作函数小结,收藏起来,总有你会用上! concat() – 将两个或多个字符的文本组合起来,返回一个新的字符串. indexOf() – 返回字符串中一个子串第一处出现的索 ...

  9. Loadrunner脚本编程(4)-数据类型操作和字符串操作

    http://www.360doc.com/content/10/0806/13/1698198_44078277.shtml 一,数据类型转换 没有使用过C编程的LoadRunner脚本编写者会发现 ...

  10. Javascript——进阶(事件、数组操作、字符串操作、定时器)

    目录 事件属性 数组 字符串操作 定时器 变量的作用域 封闭函数 弹框接收数据 事件属性 参数 描述 onclick 鼠标点击事件 onmouseover 鼠标移入标签,触发行为 onmouseout ...

最新文章

  1. shopnc 商城源码阅读笔记--开篇概述
  2. Adnroid体系与系统架构
  3. mysql 当前用户连接数_实战:判断mysql中当前用户的连接数-分组淘选
  4. 21、java中的反射机制
  5. 凭什么相信你,我的CNN模型
  6. 基于Matlab的标记分水岭分割算法
  7. 《图解算法》学习笔记之散列表(hash table)
  8. html5都有神马岗位,HTML5的优势和岗位要求你都知道吗
  9. CocosCreator代码混淆加密
  10. PREEvision软件-汽车电子电气架构的开发工具
  11. CESM优化——Intel编译器编译安装NetCDF库(C+Fortran)
  12. 小招喵跑步[java]
  13. Apache Jena入门
  14. h3c linux驱动 wn612_安装Ubuntu双系统系列——64位Ubuntu安装H3C的INode客户端
  15. 两个RGBA四通道颜色的叠加计算方法与代码实现
  16. 钉钉直播 — 为什么直播屏幕共享显示黑屏?(仅针对mac端)
  17. 满满的骚操作,通用流行框架大全
  18. 7-4 计算存款利息(10 分)
  19. vc++指定区域截屏
  20. 智能优化算法:寄生-捕食算法-附代码

热门文章

  1. windows使用git clone速度慢,改善方法
  2. 常用工具——Rsync
  3. 部分添加epel源失败的可以试试直接把mirror站网址写到baseurl里
  4. 标记区域 Region
  5. C++中sizeof详解
  6. 客户端访问Web Service--参数类型的序列化与反序列化(一)
  7. 面向 Android* Jelly Bean 的英特尔® 凌动™ x86 映像安装说明 — 推荐
  8. frame页面跳转和信息提示页面
  9. 批评一下 dearbook
  10. 翻译|How to Export a Connected Component