小编Das*_*alo的帖子

了解JavaScript中的原型继承

我是JavaScript OOP的新手.你能解释下面的代码块之间的区别吗?我测试了两个块都有效.什么是最佳实践,为什么?

第一块:

function Car(name){
    this.Name = name;
}

Car.prototype.Drive = function(){
    console.log("My name is " + this.Name + " and I'm driving.");
}

SuperCar.prototype = new Car();
SuperCar.prototype.constructor = SuperCar;

function SuperCar(name){
    Car.call(this, name);
}

SuperCar.prototype.Fly = function(){
    console.log("My name is " + this.Name + " and I'm flying!");
}

var myCar = new Car("Car");
myCar.Drive();

var mySuperCar = new SuperCar("SuperCar");
mySuperCar.Drive();
mySuperCar.Fly();
Run Code Online (Sandbox Code Playgroud)

第二块:

function Car(name){
    this.Name = name;
    this.Drive = function(){ 
        console.log("My name is " + this.Name + …
Run Code Online (Sandbox Code Playgroud)

javascript oop inheritance constructor prototype-programming

170
推荐指数
3
解决办法
5万
查看次数

JavaScript NodeList

有没有办法加入2个调用document.getElementsByTagName返回的2个NodeLists?

说,我有以下代码

var inputs = documentElement.getElementsByTagName('input');
var selects = document.getElementsByTagName('select');
Run Code Online (Sandbox Code Playgroud)

我想循环结果.有可能在一个循环中吗?

先感谢您!

javascript dom concat nodelist

27
推荐指数
3
解决办法
3万
查看次数

asp.net:runat ="server"和服务器控件之间的区别

两者之间的功能有什么不同

<asp:Button id="button1" Text="Click me" runat="server" OnClick="submitEvent" />
Run Code Online (Sandbox Code Playgroud)

<input type="button" id="button1" runat="server" value="Click me" />
Run Code Online (Sandbox Code Playgroud)

具有runat ="server"属性的输入是否具有其他或有限的属性和方法?

谢谢!

asp.net runatserver

11
推荐指数
1
解决办法
7104
查看次数

C#引用循环变量

是否有可能在C#中出现类似以下内容

foreach (ref string var in arr) {
    var = "new value";
}
Run Code Online (Sandbox Code Playgroud)

以便将var变量视为参考并分配给var将改变数组元素?

c# reference

7
推荐指数
1
解决办法
6019
查看次数

C#和PHP OOP的区别

我有一个普遍的OOP问题.

如果我在C#中有以下类

class Parent
{
    public string val = "Parent";

    public void getValue()
    {
        Console.WriteLine(this.val);
    }
}

class Child:Parent
{
    public string val = "Child";
}

Child child = new Child();
child.getValue();
Run Code Online (Sandbox Code Playgroud)

代码输出'Parent'.据我所知,这是因为这指向了Parent对象,对吗?

如果我在PHP5中也这样做:

class ParentClass {
public $val = 'parent';

    public function foo()
    {
        echo $this->val;
    }
}

class ChildClass extends ParentClass {
public $val = 'child';
}

$a = new ChildClass();
$a->foo();
Run Code Online (Sandbox Code Playgroud)

结果将是'孩子'.

虽然我改变了

public $val = 'parent'; 
Run Code Online (Sandbox Code Playgroud)

private $val = 'parent';
Run Code Online (Sandbox Code Playgroud)

然后PHP也会显示'父'.C#始终使用公共和私有访问修饰符返回"父".

这有什么理由吗?哪种行为是正确的?

任何有用的阅读链接将非常感谢!

谢谢!

php c# oop

2
推荐指数
1
解决办法
2181
查看次数