php与js的区别是什么


Posted in Javascript onAugust 05, 2013

1,类型转换的不同

在javascript中

空对象和空数组转换为boolean值为true;

但在php中

空对象空数组转换为boolean值为false;

(仅在php4中空对象的boolean值为false)

包括非0的负数值,都是转换为true;

2,实形参的不同

在js中形参和实参的个数对比起来都没有限制,形参个数可以大于实参,也可以少于实参

而在php中,实参数大于形参不报错,但当实参个数少于形参个数时(并且未指定的形参未定义时就会报错)

function mao(val1,val2,val3){ 
} 
mao(aa,bb);

此时由于val3未指定实参,会报错
但当val3初始化一个值时,不报错

function mao(val1,val2,val3="123"){ 
} 
mao(aa,bb);

js中可以写一个三元表达式来给未赋值的形参给定一个初始值,不可以和php一样在形参列表里面赋值,
本质原因由于php不存在原型连,执行过程中没有变量对象。

3.数据类型的不同

js中有undefined类型,php中无此类型,

因此当一个变量未赋予任何值时,js中此类型为undefined(使用未申明的变量会报错),而在php中则为Null类型;

并且js中只有number类型,而在php中无此类型,取代的为int float类型;

4.字符串的连接

js中使用加号 + +=

php中使用点号 ..=

5.控制语句的区别

else if与elseif在php中都支持,js只支持前者

6.大小写问题

js严格区分大小写

php中自定义函数名不区分大小写。命名函数时不可使用已声明的函数,或PHP内建的函数名称。

7.变量的作用范围

php在函数范围之外所声明的变量就是全局变量。由于函数可以视为单独的
程序片段,所以局部变量会复盖全局变量的能见度,因此在函数中并无
法直接调用使用全局变量。函数中若要使用全局变量时,必须要利用global关键字定义目标变量,以
告诉函数主体此变量为全局。

js由于原型连的关系,可直接调用

8.静态变量

PHP支持声明函数变量为静态的(static)

js随无静态变量但可以定义函数的属性来冒充静态变量

Javascript 相关文章推荐
IE和firefox浏览器的event事件兼容性汇总
Dec 06 Javascript
jQuery中insertBefore()方法用法实例
Jan 08 Javascript
封装属于自己的JS组件
Jan 27 Javascript
jQuery Mobile操作HTML5的常用函数总结
May 17 Javascript
微信小程序前端源码逻辑和工作流
Sep 25 Javascript
js实现html table 行,列锁定的简单实例
Oct 13 Javascript
利用vue-router实现二级菜单内容转换
Nov 30 Javascript
EasyUI学习之Combobox级联下拉列表(2)
Dec 29 Javascript
javascript自执行函数
Feb 10 Javascript
AngularJS实现的根据数量与单价计算总价功能示例
Dec 26 Javascript
JS实现获取进今年第几天是周几的方法分析
Jun 27 Javascript
JS计算斐波拉切代码实例
Sep 12 Javascript
IE下写xml文件的两种方式(fso/saveAs)
Aug 05 #Javascript
js获取input标签的输入值实现代码
Aug 05 #Javascript
js实现页面转发功能示例代码
Aug 05 #Javascript
Jquery:ajax实现翻页无刷新功能代码
Aug 05 #Javascript
jquery js 重置表单 reset()具体实现代码
Aug 05 #Javascript
JS幻灯片可循环播放可平滑旋转带滚动导航(自写)
Aug 05 #Javascript
artDialog双击会关闭对话框的修改过程分享
Aug 05 #Javascript
You might like
php下载远程文件类(支持断点续传)
2008/11/14 PHP
支持中文字母数字、自定义字体php验证码代码
2012/02/27 PHP
PHP版网站缓存加快打开速度的方法分享
2012/06/03 PHP
PHP 将逗号、空格、回车分隔的字符串转换为数组的函数
2012/06/07 PHP
php返回相对时间(如:20分钟前,3天前)的方法
2015/04/14 PHP
PHP正则表达式之捕获组与非捕获组
2015/11/06 PHP
php解决安全问题的方法实例
2019/09/19 PHP
javascript写的日历类(基于pj)
2010/12/28 Javascript
在标题栏显示新消息提示,很多公司项目中用到这个方法
2011/11/04 Javascript
文本框文本自动补全效果示例分享
2014/01/19 Javascript
jquery实现清新实用的网页菜单效果
2015/08/28 Javascript
jquery实现点击弹出可放大居中及关闭的对话框(附demo源码下载)
2016/05/10 Javascript
浅谈jquery设置和获得checkbox选中的问题
2016/08/19 Javascript
node.js+jQuery实现用户登录注册AJAX交互
2017/04/28 jQuery
js 判断一个数字是不是2的n次方幂的实例
2017/11/26 Javascript
详解jQuery中的isPlainObject()使用方法
2018/02/27 jQuery
关于JavaScript中高阶函数的魅力详解
2018/09/07 Javascript
nodejs中方法和模块用法示例
2018/12/24 NodeJs
深入了解JavaScript 私有化
2019/05/30 Javascript
js简单实现自动生成表格功能示例
2020/06/02 Javascript
JavaScript中如何调用Java方法
2020/09/16 Javascript
VUE+Element实现增删改查的示例源码
2020/11/23 Vue.js
opencv python 2D直方图的示例代码
2018/07/20 Python
python的mysql数据库建立表与插入数据操作示例
2019/09/30 Python
Python中的特殊方法以及应用详解
2020/09/20 Python
MyHeritage美国:家族史研究和DNA测试的领先服务
2019/05/27 全球购物
成功经营餐厅的创业计划书范文
2013/12/26 职场文书
《三袋麦子》教学反思
2014/03/02 职场文书
擅自离岗检讨书
2014/09/12 职场文书
2014年个人教学工作总结
2014/12/09 职场文书
优秀教师工作总结2015
2015/07/22 职场文书
关于做家务的心得体会
2016/01/23 职场文书
详解MySQL中的pid与socket
2021/06/15 MySQL
分析mysql中一条SQL查询语句是如何执行的
2021/06/21 MySQL
CSS实现隐藏搜索框功能(动画正反向序列)
2021/07/21 HTML / CSS
使用 MybatisPlus 连接 SqlServer 数据库解决 OFFSET 分页问题
2022/04/22 SQL Server